function postBack(n,t){null!=n&&null!=t&&null!=t.origin&&t.source.postMessage(JSON.stringify(n),t.origin)}function customMessagePostBack(n,t,i){if(i&&n){var r={messageType:"CUSTOM",messageId:t,result:n};parent.postMessage(JSON.stringify(r),i)}}function handleCustomMessage(n,t){var r=n.messageType,i=n.message;r=="BulkUploadUsersSubmit"?($("#uploadToken").val(i.token),$("#origin").val(t.origin),$("#messageQueueIndex").val(n.queueIndex),$("#whr").val(i.whr),$("#"+i.formName).submit()):r=="SetCurrentCourseId"?document.cookie="CurrentCourseId="+i+"; path=/;":r=="SetUserLanguage"&&(document.cookie="_culture="+i+"; path=/;")}function handleMessage(n){var t;if(executionContext==="bulk"||n.origin.split("/")[2].split(":")[0]===executionContext.hostUrl){if(t=new Function("return "+n.data)(),t=="INIT"){postBack({messageType:"INIT",currentUser:executionContext.userContext,adminLearningPlansCount:executionContext.adminLearningPlansCount,adminGroupsCount:executionContext.adminGroupsCount,isChannelActive:executionContext.isChannelActive,adminUsersCount:executionContext.adminUsersCount,isAnonymousTenant:executionContext.isAnonymousTenant,appChannel:executionContext.appChannel,platformBuildVersion:executionContext.platformBuildVersion},n);return}if(t.isCustom){handleCustomMessage(t,n);return}var r={origin:n.origin,source:n.source},i=t.dataType,u=t.cache;$.ajax({xhrFields:{withCredentials:!0},url:t.target,data:t.data,type:t.type,dataType:i&&i.toLowerCase()=="xml"?"text":i,contentType:t.contentType,cache:undefined==u?!0:u,headers:{channel:executionContext.appChannel,"X-MLX-ClientTimeStamp":(new Date).getTime()},success:function(n,i,u){var f=n,e={messageType:"AJAX_SUCCESS",messageId:t.messageId,statusText:i,statusCode:u.status,statusMessage:u.statusText,result:f?f:n};postBack(e,r)},error:function(n,i,u){var f=n.status,e={messageType:f==403||f==401||f==12017?"AJAX_AUTH":"AJAX_FAILURE",messageId:t.messageId,statusText:i,statusCode:f,statusMessage:n.statusText,responseText:n.responseText,requestId:n.getResponseHeader("X-MLX-RequestId"),error:u};postBack(e,r)}})}}$(window).on("message",function(n){handleMessage(n.originalEvent)})