UNPKG

ca-mas-foundation-cordova

Version:
1,035 lines (838 loc) 67.4 kB
<!DOCTYPE html> <html> <head> <title>Home Page</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" /> <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script> <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script> <meta charset="utf-8"> <!-- iPad/iPhone specific css below, add after your main css > <link rel="stylesheet" media="only screen and (max-device-width: 1024px)" href="ipad.css" type="text/css" /> <link rel="stylesheet" media="only screen and (max-device-width: 480px)" href="iphone.css" type="text/css" /> --> <!-- If your application is targeting iOS BEFORE 4.0 you MUST put json2.js from http://www.JSON.org/json2.js into your www directory and include it here --> <script type="text/javascript" charset="utf-8" src="cordova.js"></script> <script type="text/javascript" charset="utf-8" src="plugins/cordova-plugin-mas-core/www/MASPlugin.js"></script> <script type="text/javascript"> // If you want to prevent dragging, uncomment this section /* function preventBehavior(e) { e.preventDefault(); }; document.addEventListener("touchmove", preventBehavior, false); */ /* If you are supporting your own protocol, the var invokeString will contain any arguments to the app launch. see http://iphonedevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html for more details -jm */ /* function handleOpenURL(url) { // TODO: do something with the url passed in. } */ function onBodyLoad() { document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady() { var MAS = new MASPlugin.MAS(); MAS.initialize(function(result) {}, function(error) { alert("Initialization failure"); }); } </script> <script type="text/javascript"> $(document).ready(function() { $("#scan").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); if ('plugins' in cordova && 'barcodeScanner' in cordova.plugins) { cordova.plugins.barcodeScanner.scan(function(result) { var MAS = new MASPlugin.MAS(); MAS.authorize(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, result.text); }, function(error) { alert("Scanning failed: " + error); }, { "preferFrontCamera": false, // iOS and Android "showFlipCameraButton": true, // iOS and Android "prompt": "Place a barcode inside the scan area", // supported on Android only "formats": "QR_CODE,PDF_417", // default: all but PDF_417 and RSS_EXPANDED "orientation": "landscape" // Android only (portrait|landscape), default unset so it rotates with the device }); } else if (typeof QRCode !== 'undefined') { QRCode.scanCode(function(info) { var MAS = new MASPlugin.MAS(); MAS.authorize(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, info); }); } else { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, "No QRCode Scanner plugin added !!"); } }); $("#init").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.initialize(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#useNativeMASUI").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.useNativeMASUI(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#setCustomLoginPage").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var loginPageName = $("input[name='loginPageName']").val(); MAS.setCustomLoginPage(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, loginPageName); }); $("#setCustomOTPChannelsPage").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var otpChannelsPageName = $("input[name='otpChannelsPageName']").val(); MAS.setCustomOTPChannelsPage(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, otpChannelsPageName); }); $("#setCustomOTPPage").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var otpPageName = $("input[name='otpPageName']").val(); MAS.setCustomOTPPage(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, otpPageName); }); $("#setGrantFlowPassword").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.grantFlow(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, MASPlugin.MASGrantFlow.MASGrantFlowPassword); }); $("#setGrantFlowClientCredential").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.grantFlow(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, MASPlugin.MASGrantFlow.MASGrantFlowClientCredentials); }); $("#setConfigName").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var configFileName = $("input[name='configName']").val(); MAS.configFileName(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, configFileName); }); $("#start").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.start(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#startWithDefault").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.startWithDefaultConfiguration(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, true); }); $("#startWithJSON").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var jsonObject = thisElement.find("input[name='jsonObject']").val() ? JSON.parse(thisElement.find("input[name='jsonObject']").val()) : null; MAS.startWithJSON(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, jsonObject); }); $("#stop").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.stop(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, MASPlugin.MASGrantFlow.MASGrantFlowClientCredentials); }); $("#initEnterpriseBrowser").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.initEnterpriseBrowser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#gatewayIsReachable").bind("click", function(event, ui) { $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); MAS.gatewayIsReachable(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#userLogin").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var username = $("input[name='userLoginUsername']").val(); var password = $("input[name='userLoginPassword']").val(); MASPluginUser.loginWithUsernameAndPassword(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, username, password); }); $("#getUsername").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result.userName); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getName").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result.formattedName); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getAddressList").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result.addresses); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getEmailList").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result.emailAddresses); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#userImplicitLogin").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.loginWithImplicitFlow(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getCurrentUser").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#isSessionLocked").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { result.isSessionLocked(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }) }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#lockSession").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(currentUser) { currentUser.lockSession(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#unlockSession").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(currentUser) { currentUser.unlockSession(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#unlockSessionWithMessage").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(currentUser) { currentUser.unlockSessionWithMessage(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, "My Message"); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#removeSessionLock").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(currentUser) { currentUser.removeSessionLock(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#isUserAuthenticated").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(result) { result.isAuthenticated(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#isDeviceRegistered").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.isDeviceRegistered(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getCurrentDevice").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.getCurrentDevice(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#isActive").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.isActive(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getDeviceIdentifier").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.getDeviceIdentifier(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#userLogout").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); MASPluginUser.currentUser(function(currentUser) { currentUser.logout(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#deregisterDevice").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.deregister(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#resetLocally").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASDevice = new MASPlugin.MASDevice(); MASDevice.resetLocally(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getApplicationIdentifier").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getIdentifier(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getApplicationName").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getName(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }, ApplicationIdentifiersList[2]); }); $("#getApplicationIconUrl").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getIconUrl(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getApplicationAuthUrl").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getAuthUrl(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getApplicationNativeUri").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getNativeUri(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getApplicationCustom").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.getCustom(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); var ApplicationIdentifiersList = ""; $("#retrieveEnterpriseApps").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MASApplication = new MASPlugin.MASApplication(); MASApplication.retrieveEnterpriseApps(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); ApplicationIdentifiersList = result; }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); }); }); $("#getCRUD").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var requestType = parseRequestResponseType(thisElement.find("select[name='requestType']").val()); var responseType = parseRequestResponseType(thisElement.find("select[name='responseType']").val()); var requestParam = thisElement.find("input[name='parameter']").val() ? JSON.parse(thisElement.find("input[name='parameter']").val()) : null; var requestHeader = thisElement.find("input[name='header']").val() ? JSON.parse(thisElement.find("input[name='header']").val()) : null; var requestPath = thisElement.find("input[name='path']").val().trim(); // $.mobile.showPageLoadingMsg(); MAS.getFromPath(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); // $.mobile.hidePageLoadingMsg(); }, function(error) { // console.log(error); var returnedMsg = getErrorMessage(error); if (returnedMsg != null && returnedMsg != undefined && returnedMsg != "") { error.errorMessage = returnedMsg; } thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); // $.mobile.hidePageLoadingMsg(); }, requestPath, requestParam, requestHeader, requestType, responseType); }); $("#putCRUD").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var requestType = parseRequestResponseType(thisElement.find("select[name='requestType']").val()); var responseType = parseRequestResponseType(thisElement.find("select[name='responseType']").val()); var requestParam = thisElement.find("input[name='parameter']").val() ? JSON.parse(thisElement.find("input[name='parameter']").val()) : null; var requestHeader = thisElement.find("input[name='header']").val() ? JSON.parse(thisElement.find("input[name='header']").val()) : null; var requestPath = thisElement.find("input[name='path']").val().trim(); // $.mobile.showPageLoadingMsg(); MAS.putToPath(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); // $.mobile.hidePageLoadingMsg(); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); // $.mobile.hidePageLoadingMsg(); }, requestPath, requestParam, requestHeader, requestType, responseType); }); $("#postCRUD").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var requestType = parseRequestResponseType(thisElement.find("select[name='requestType']").val()); var responseType = parseRequestResponseType(thisElement.find("select[name='responseType']").val()); var requestParam = thisElement.find("input[name='parameter']").val() ? JSON.parse(thisElement.find("input[name='parameter']").val()) : null; var requestHeader = thisElement.find("input[name='header']").val() ? JSON.parse(thisElement.find("input[name='header']").val()) : null; var requestPath = thisElement.find("input[name='path']").val().trim(); // $.mobile.showPageLoadingMsg(); MAS.postToPath(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); // $.mobile.hidePageLoadingMsg(); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); // $.mobile.hidePageLoadingMsg(); }, requestPath, requestParam, requestHeader, requestType, responseType); }); $("#deleteCRUD").bind("click", function(event, ui) { if ($(event.target).context.tagName != 'A') return; $(this).find("textarea.error").hide(); var thisElement = $(this); var MAS = new MASPlugin.MAS(); var requestType = parseRequestResponseType(thisElement.find("select[name='requestType']").val()); var responseType = parseRequestResponseType(thisElement.find("select[name='responseType']").val()); var requestParam = thisElement.find("input[name='parameter']").val() ? JSON.parse(thisElement.find("input[name='parameter']").val()) : null; var requestHeader = thisElement.find("input[name='header']").val() ? JSON.parse(thisElement.find("input[name='header']").val()) : null; var requestPath = thisElement.find("input[name='path']").val().trim(); // $.mobile.showPageLoadingMsg(); MAS.deleteFromPath(function(result) { thisElement.removeClass("success").removeClass("failure").addClass("success"); displayResult(thisElement, result); // $.mobile.hidePageLoadingMsg(); }, function(error) { thisElement.removeClass("success").removeClass("failure").addClass("failure"); displayError(thisElement, error); // $.mobile.hidePageLoadingMsg(); }, requestPath, requestParam, requestHeader, requestType, responseType); }); function parseRequestResponseType(type) { if (type == "json") { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeJson; } else if (type == "scimJSON") { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeScimJson; } else if (type == "text") { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeTextPlain; } else if (type == "urlEncoded") { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeWwwFormUrlEncoded; } else if (type == "xml") { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeXml; } else { return MASPlugin.MASRequestResponseType.MASRequestResponseTypeUnknown; } } function resetAction(element) { element.find("textarea.error").hide(); element.removeClass("success").removeClass("failure"); } function displayResult(element, result) { var isJSON = true; try { var json = $.parseJSON(result); } catch (err) { isJSON = false; } if (isJSON) { element.find("textarea.error").show(); element.find("textarea.error").html(JSON.stringify(result)); } else { element.find("textarea.error").show(); element.find("textarea.error").html(result + ""); } } function displayError(element, error) { element.find("textarea.error").show(); var errorMessage = ""; if (typeof error === 'undefined' || typeof error.errorMessage === 'undefined') { errorMessage = "Unknown error"; } else if (error.errorMessage === 'Internal Server Error' && typeof error.errorMessageDetail === 'undefined') { errorMessage = error.errorMessage; } else if (error.errorMessage === 'Internal Server Error' && typeof error.errorMessageDetail !== 'undefined') { errorMessage = error.errorMessageDetail; } else { errorMessage = error.errorMessage; } element.find("textarea.error").html(errorMessage); } }); </script> <script type="text/javascript"> function getErrorMessage(error) { var errorMsgToDisplay = ""; if (error != null && error != undefined && error != "") { if (error.errorCode != null && error.errorCode != undefined && !isNaN(error.errorCode)) { var errorCodeLastDigits = error.errorCode % 1000; if (errorCodeLastDigits === 140) { errorMsgToDisplay = "X-OTP header required"; } else if (errorCodeLastDi