window.onerror=function wp$globalErrHandler(e,t,n,s,o){var r;if(r=e?'"'+e+'"':"unhandled exception",o&&o.stack)try{WP&&WP.DOM&&WP.DOM.Browser.isIE||WP.DOM.Browser.isLegacyEdge?(console.groupCollapsed("Stack Trace for "+r),console.error(o.stack),console.groupEnd()):(console.groupCollapsed("Stack Trace for "+r,""),console.error(o.message),console.groupEnd()),$$WP.Debug._errorCount++,$$WP.Debug._updateErrorCountDisplay()}catch(e){}},$$WP=$$WP||{},$$WP.Utilities=$$WP.Utilities||{},$$WP.Utilities.UI=$$WP.Utilities.UI||{},$$WP.Utilities.UI.OnUIFrameworkLoaded&&$$WP.Utilities.UI.OnUIFrameworkLoaded((function(){!$$WP.Utilities.UI.IsMobile&&$$WP.Debug.CheckForStringResources&&$.ajax({url:makeLink("/Tests/CheckStringResources"),dataType:"json",global:!1,error:function(){$$WP.Debug.log("Debug: Couldn't check for missing string resources. /Tests/CheckStringResources is not available.")},success:function(e){var t,n,s="";if(!e.IsSuccess){if(s+='<div id="missingStringsWarning">',s+='<p>Incorrect strings detected in .resx files!!! <a href="#" data-function="dismiss">[X]</a></p>',s+='<p><a href="#" data-function="toggleDetails">[+/- details]</a></p>',s+='<div data-contents="details" class="jqHidden">',e.MissingStrings&&e.MissingStrings.length>0)for(s+="~ MISSING ~<br/>",t=0;t<e.MissingStrings.length;t++)s+=e.MissingStrings[t]+"<br/>";if(e.ModifiedStrings&&e.ModifiedStrings.length>0)for(s+="~ MODIFIED ~<br/>",t=0;t<e.ModifiedStrings.length;t++)s+=e.ModifiedStrings[t]+"<br/>";if(e.ExtraStrings&&e.ExtraStrings.length>0)for(s+="~ UNUSED ~<br/>",t=0;t<e.ExtraStrings.length;t++)s+=e.ExtraStrings[t]+"<br/>";s+="</div>",s+="</div>",(n=dangerou$.parseHtml(s)).on("click",'[data-function="toggleDetails"]',(function(e){e.preventDefault(),e.stopPropagation(),n.find('[data-contents="details"]').toggle()})),n.on("click",'[data-function="dismiss"]',(function(e){e.preventDefault(),e.stopPropagation(),n.remove()})),$afe.select("body").safeAppend(n)}}})})),$$WP=$$WP||{},$$WP.Debug=$$WP.Debug||{},$$WP.Debug.UI=$$WP.Debug.UI||{},$$WP.Debug.UnitTest=$$WP.Debug.UnitTest||{},$$WP.Debug.UnitTest.tests=$$WP.Debug.UnitTest.tests||[],$$WP.Debug._failedAssertions=0,$$WP.Debug._assertions=0,$$WP.Debug._errorCount=0,$$WP.Debug._$errorCountDisplay=null,$$WP.Debug.log=function WP$Debug$lgMsg(e,t){var n;if(e=e||"",$$WP.Debug.IsEnabled)try{n=new Error(e),t&&console.trace?(console.groupCollapsed($$WP.Debug.messagePrefix+e),console.trace(),console.groupEnd()):t&&"stack"in n?(console.groupCollapsed($$WP.Debug.messagePrefix+e),console.log(n.stack),console.groupEnd()):console.log($$WP.Debug.messagePrefix+e)}catch(e){}},$$WP.Debug.logError=function WP$Debug$lgErr(e,t){var n,s;if(e=e||"","boolean"!=typeof t&&(t=!0),t){try{WP&&WP.DOM&&WP.DOM.Browser.isIE||WP.DOM.Browser.isLegacyEdge?(console.groupCollapsed($$WP.Debug.messagePrefix+e),console.trace(),console.groupEnd()):console.error($$WP.Debug.messagePrefix+e,""),s=!0}catch(t){try{(n=new Error(e)).stack.length>0&&(console.groupCollapsed($$WP.Debug.messagePrefix+e),console.error(n.stack,""),console.groupEnd(),s=!0)}catch(e){}}if(!s)try{console.error($$WP.Debug.messagePrefix+e,"")}catch(e){}}else try{console.error($$WP.Debug.messagePrefix+e,"")}catch(e){}$$WP.Debug._errorCount++,$$WP.Debug._updateErrorCountDisplay()},$$WP.Debug._updateErrorCountDisplay=function WP$Debug$_updateErrorCountDisplay(){$$WP.Debug.IsEnabled&&(null===$$WP.Debug._$errorCountDisplay&&($$WP.Debug._$errorCountDisplay=$afe.jq(document.createElement("div")),$$WP.Debug._$errorCountDisplay.css({position:"absolute","background-color":"red",color:"white","font-weight":"bold",width:"auto",padding:"1px","margin-left":"2px","z-index":"100"}),$afe.select("#header").safePrepend($$WP.Debug._$errorCountDisplay)),$$WP.Debug._$errorCountDisplay.empty(),$$WP.Debug._$errorCountDisplay.text("Errors in console: "+$$WP.Debug._errorCount))},$$WP.Debug.ShowNonProdBanner=function $$WP$Debug$ShowNonProdBanner(){if("true"!==sessionStorage.HideNonProdBanner){var e,t="";t+='<div id="nonProdBanner">',t+="<strong><span>"+$$WP.Strings.get("NonProdErrorMessage","global")+'&nbsp;<a href="#" data-function="dismiss" title="'+$$WP.Strings.get("NonProdErrorMessageDismissTitle","global")+'">[X]</a></span></strong>',t+="</div>",(e=dangerou$.parseHtml(t)).on("click",'[data-function="dismiss"]',(function(t){sessionStorage.setItem("HideNonProdBanner","true"),t.preventDefault(),t.stopPropagation(),$$WP.Debug.RemoveBanner(e)})),$$WP.Debug.AddBanner(e)}},$$WP.Debug.ShowAdminElevationBanner=function $$WP$Debug$ShowAdminElevationBanner(){var e,t,n,s;e=$$WP.Strings.get("AdminBannerText","global"),t=$$WP.Strings.get("AdminBannerAction","global"),n='<div class="adminElevationBanner" id="adminElevationBanner">',n+="<strong><span>"+e+'&nbsp;[<a href="#"  data-function="endsession" ',n+='title="'+$$WP.Strings.get("AdminBannerActionTitle","global")+'">'+t+"</a>]</span></strong ></div >",(s=dangerou$.parseHtml(n)).on("click",'[data-function="endsession"]',$$WP.Debug.PromptToEndElevatedSession),$$WP.Debug.AddBanner(s)},$$WP.Debug.PromptToEndElevatedSession=function $$WP$Debug$PromptToEndElevatedSession(){var e,t;e={ToolbarButtons:[{Text:$$WP.Strings.get("AdminPopupConfirmButtonText","global"),Class:"completeworkflow"},{Text:$$WP.Strings.get("AdminPopupCancelButtonText","gloal"),Class:"cancelworkflow"}],TitleText:$$WP.Strings.get("AdminPopupTitleText","global"),Html:$$WP.Strings.get("AdminPopupMessageText","global"),IsClosable:!0,callback:function(e){e&&($$WP.Debug.ClearClipboard(),this.dispose(!0),window.location.href=makeLink("/Authentication/ServerAdmin/ClearElevation"))}},t=new $$WPComp.ConfirmComponent(e,{Size:$$WPContain.Popup.SizeEnum.SMALL}),$$WPUtil.quickPopup(t)},$$WP.Debug.ClearClipboard=function $$WP$Debug$ClearClipboard(){var e;e=dangerou$.parseHtml('<input id="clearClipboard" type="text" id="clearText" value=" " />'),$afe.select("body").safePrepend(e),e.select(),document.execCommand("copy"),e.remove()},$$WP.Debug.AddBanner=function $$WP$Debug$AddBanner(e){$$WP.Debug.CreateBannerContainer(),$afe.select("#sitebanner").safePrepend(e),$$WP.Debug.UpdateTopMarginForBanners(),setTimeout((function(){$$WP.Utilities.UI._CalculateHeaderHeight()}),100)},$$WP.Debug.RemoveBanner=function $$WP$Debug$RemoveBanner(e){$afe.select("#sitebanner").safeAttr("role",""),e.remove(),$afe.select("#sitebanner").safeAttr("role","alert"),$$WP.Debug.UpdateTopMarginForBanners()},$$WP.Debug.UpdateTopMarginForBanners=function $$WP$Debug$UpdateTopMarginForBanners(){var e=$afe.select("#header"),t=$afe.select(".titlebar"),n=$afe.select(".Popup"),s=$afe.select("#sitebanner").height();n.length&&n.css("margin-top",s),e.length&&e.css("top",s),$afe.jq(document).width()<1300&&!n?t.length&&t.css("margin-top",s):t.length&&t.css("margin-top",0)},$$WP.Debug.CreateBannerContainer=function $WP$Debug$CreateBannerContainer(){if(0===$afe.select("#sitebanner").length){var e;'<div id="sitebanner" class="sitebanners" role="alert">',"</div>",e=dangerou$.parseHtml('<div id="sitebanner" class="sitebanners" role="alert"></div>'),$afe.select("body").safePrepend(e)}},$$WP.Debug._synchronousAjax=function WP$Debug$_syncAjax(e,t){var n;(n=(n="object"==typeof e?e:t)||{}).async=!1,$$WP.Debug._oldAjax(e,n)},$$WP.Debug.makeAjaxSynchronous=function WP$Debug$mkAjaxSync(){if($$WP.Debug.IsEnabled){if($.ajax===$$WP.Debug._synchronousAjax)return;$$WP.Debug._oldAjax=$$WP.Debug._oldAjax||$.ajax||jQuery.ajax,$.ajax=$$WP.Debug._synchronousAjax}},$$WP.Debug.allowAjaxAsynchronous=function WP$Debug$alwAjaxAsync(){$.ajax===$$WP.Debug._synchronousAjax&&($.ajax=$$WP.Debug._oldAjax)},$$WP.Debug.UnitTest.assert=function WP$Debug$asrt(e,t){$$WP.Debug._assertions++,e||($$WP.Debug._failedAssertions++,$$WP.Debug.logError(t,!1))},$$WP.Debug.UnitTest.assertValue=function WP$Debug$asrtVal(e,t,n){$$WP.Debug.UnitTest.assert(e===t,n+"(expected '"+e+"', got '"+t+"')")},$$WP.Debug.UnitTest.cssClassesMatch=function WP$Debug$cssClassesMatch(e,t){var n,s;if(n=e.safeAttr("class").split(" "),(t=t.split(" ")).length!==n.length)return!1;for(n.sort(),t.sort(),s=0;s<n.length;s++)if(n[s]!==t[s])return!1;return!0},$$WP.Debug.UnitTest.resetCounters=function WP$Debug$rstCntrs(){$$WP.Debug._failedAssertions=0,$$WP.Debug._assertions=0},$$WP.Debug.UnitTest.getFailedAssertionCount=function WP$Debug$gtAsrtFailCnt(){return $$WP.Debug._failedAssertions},$$WP.Debug.UnitTest.runAll=function WP$Debug$untTst$rnAl(e){var t,n,s,o,r,a,i,$,l,g,u,d;if($$WP.Debug.IsEnabled)for(e=e||$afe.select("body"),d=$$WP.SimpleTemplates.WarningIcon({class:"testWarning"}),0!==(t=$afe.select("#WP-Debug-UnitTest-TestingRange")).length?((n=t.find('table[name="resultsTable"]')).empty(),(s=t.find('div[name="sandbox"]')).empty()):(t=$$WP.SimpleTemplates.Div({id:"WP-Debug-UnitTest-TestingRange"}),n=dangerou$.parseHtml('<table name="resultsTable"><tr><th class="testName">Test name</th><th class=""testResult>Result</th></tr></table>'),s=$$WP.SimpleTemplates.Div({name:"sandbox"}),e.safeAppend(t),t.safeAppend(n),t.safeAppend(s)),o=0;o<$$WP.Debug.UnitTest.tests.length;o++){r=$$WP.Debug.UnitTest.tests[o],$$WP.Debug.UnitTest.resetCounters(),u=!1;try{r(s)}catch(e){$$WP.Debug.log(e.stack),u=!0}$=$$WP.Debug.UnitTest.getFailedAssertionCount(),l=$$WP.Debug._assertions,u?($$WP.Debug.log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Test Failed XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"),g=dangerou$.parseHtml('<td class="testResult exceptionThrown">'+d[0].outerHTML+" Test failed "+$+" of "+l+" checks. Did not run the entire test due to an unhandled exception.<br/>See console for more details</td>")):$>0?($$WP.Debug.log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Test Failed XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"),g=dangerou$.parseHtml('<td class="testResult failedAssertion">'+d[0].outerHTML+" Test failed "+$+" of "+l+" checks. See console for more details.</td>")):0===l?($$WP.Debug.log("No test cases defined for this module."),g=dangerou$.parseHtml('<td class="testResult noAssertion">No test cases defined for this module.</td>')):g=dangerou$.parseHtml('<td class="testResult passed">Test passed all '+l+" checks</td>"),s.empty(),i=dangerou$.parseHtml("<tr></tr>"),a=r.name||"Test",i.safeAppend(dangerou$.parseHtml('<td class="testName">'+a.replace(/UnitTests\$/,"")+"</td>")),i.safeAppend(g),n.safeAppend(i)}},function WP$Debug$Workflow(){var e={},t=function WP$Debug$Workflow(){};t.prototype={addMonitor:function WP$Debug$Workflow$addMonitor(t,n){$$WP.Debug.IsEnabled&&(e[t]=n)},getWorkflow:function WP$Debug$Workflow$get(t){if($$WP.Debug.IsEnabled&&e[t])return e[t]},removeMonitor:function WP$Debug$Workflow$removeMonitor(t){$$WP.Debug.IsEnabled&&delete e[t]}},$$WP.Debug.Workflow=$$WP.Debug.Workflow||new t}();