<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">var formslogin_modules_Login_username,formslogin_modules_Login_password,formslogin_modules_Login_footer,formslogin_modules_Login_root;window._javaScriptCache==null&amp;&amp;(window._javaScriptCache={});formslogin_modules_Login_username=function(){function n(n){var t=this;this.UserName=ko.observable("");this.cookieName="username=";this.RememberMe=ko.observable(!1);this.theView=null;this.RememberMeLabelClick=function(){t.RememberMe(!t.RememberMe())};this.DetectEnterKey=function(n,i){return(i=i||window.event,i.keyCode===13||i.charCode===13)?(t.NextClick(),!1):!0};this.checkCookieForOldUserNameAndUpdateUI=function(){for(var u=document.cookie.split(";"),n,r,i=0;i&lt;u.length;i++){for(n=u[i];n.charAt(0)===" ";)n=n.substring(1);n.indexOf(t.cookieName)===0&amp;&amp;(r=n.substring(t.cookieName.length,n.length),t.UserName(r),r.length&gt;0&amp;&amp;t.RememberMe(!0))}};this.focusUsernameInput=function(){null!==t.theView&amp;&amp;$(t.theView).find("#usernameInput").focus()};this.redirectToSSO=function(n,i){if(!i){alertDialog("SAML2 is currently the only supported SSO method for 4DXOS.&lt;br/&gt;&lt;br/&gt;Please contact support.",null,t.focusUsernameInput);return}if(null==n||""===n.trim()){alertDialog("Your company doesn't have SSO configured correctly.&lt;br/&gt;&lt;br/&gt;Please contact support.",null,t.focusUsernameInput);return}window.location=n};this.NextClick=function(){var u=t.cookieName,n=t.UserName(),f=t.RememberMe(),i,r;if(null==n||""==n.trim()){alertDialog("Missing parameter: Username");return}f?(i=new Date,i.setTime(i.getTime()+2592e6),document.cookie=u+n+";expires="+i.toUTCString()):document.cookie=u+";expires=Thu, 01 Jan 1970 00:00:00 UTC";r=loadingDialog("Loading Please Wait...");_serviceCallManager.buildAndMakeRequest("post","/formslogin/TenantDiscovery",{LoginName:n},function(i){if(r.close(),!i.CompanyMustUseSSOToSignIn){t.callback(n,i.CanUseStayLoggedIn);return}if(i.CanUserLoginDirectlyOverridingSSO){confirmDialog("You have the ability to login without SSO. Would you like to continue? &lt;br/&gt;&lt;br/&gt;Click 'Yes' to continue WITHOUT SSO. &lt;br/&gt;Click 'No' to use your company's SSO website.",function(){t.callback(n,i.CanUseStayLoggedIn)},function(){t.redirectToSSO(i.SAMLUrl,i.IsTheCompanyUsingSAML2ForSSO)});return}t.redirectToSSO(i.SAMLUrl,i.IsTheCompanyUsingSAML2ForSSO)},function(n){r.close();typeof n.responseJSON.ExceptionMessage=="string"?alertDialog(n.responseJSON.ExceptionMessage,null,t.focusUsernameInput):alertDialog(n.responseJSON.Message,null,t.focusUsernameInput)})};this.activate=function(n,i){t.theView=i;t.checkCookieForOldUserNameAndUpdateUI();t.focusUsernameInput()};this.callback=n}return n}();window._javaScriptCache["/FORMSLOGIN/MODULES/LOGIN/USERNAME"]=formslogin_modules_Login_username;formslogin_modules_Login_username.prototype.referencePath="/FORMSLOGIN/MODULES/LOGIN/USERNAME";formslogin_modules_Login_password=function(){function n(t,i,r){var u=this;this.theView=null;this.Password=ko.observable("");this.ShowStayLoggedIn=ko.observable(!1);this._stayLoggedIn=ko.observable(!1);this.StayLoggedIn=ko.pureComputed({read:function(){return u._stayLoggedIn()&amp;&amp;u.ShowStayLoggedIn()},write:function(n){u._stayLoggedIn(n)}});this.StayLoggedInLabelClick=function(){u.StayLoggedIn(!u.StayLoggedIn())};this.DetectEnterKey=function(n,t){return(t=t||window.event,t.keyCode===13||t.charCode===13)?(u.LoginClick(),!1):!0};this.UserNameClick=function(){u.usernameClicked()};this.focusPasswordInput=function(){null!==u.theView&amp;&amp;$(u.theView).find("#passwordInput").focus()};this.LoginClick=function(){var i=u.Password(),t;if(null==i||""==i.trim()){alertDialog("Missing parameter: Password");return}t=loadingDialog("Loading Please Wait...");_serviceCallManager.buildAndMakeRequest("post","/formslogin/Login",{userName:u.UserName,password:i},function(){u.StayLoggedIn()?_serviceCallManager.buildAndMakeRequest("post","/formslogin/KeepLoggedIn/true",null,function(){t.close();n.AfterAuthRedirect()},function(){t.close();n.AfterAuthRedirect()}):(t.close(),n.AfterAuthRedirect())},function(n){t.close();typeof n.responseJSON.ExceptionMessage=="string"?alertDialog(n.responseJSON.ExceptionMessage,null,u.focusPasswordInput):alertDialog(n.responseJSON.Message,null,u.focusPasswordInput)})};this.activate=function(n,t){u.theView=t;u.focusPasswordInput()};this.UserName=t;this.usernameClicked=r;this.ShowStayLoggedIn(i)}return n.AfterAuthRedirect=function(){var n=null,r=window.location.search.substr(1),t=r.split("="),i;if(t.length%2==0&amp;&amp;t.length!==0)for(i=0;i&lt;t.length;i++)if(t[i].toLowerCase()==="returnurl"){n=decodeURIComponent(t[i+1]);n!=null&amp;&amp;n.toLowerCase().trim()==="/default.aspx"&amp;&amp;(n=null);break}(n==null||n.trim()==="/"||n.trim()==="")&amp;&amp;(n="/SPAs/Session.aspx");n+=window.location.hash;window.location=n},n}();window._javaScriptCache["/FORMSLOGIN/MODULES/LOGIN/PASSWORD"]=formslogin_modules_Login_password;formslogin_modules_Login_password.prototype.referencePath="/FORMSLOGIN/MODULES/LOGIN/PASSWORD";formslogin_modules_Login_footer=function(){function n(){this.CopyrightText=function(){var n=moment().format("YYYY");return"Portions Copyright 2016 BahrCode, Inc. All Rights Reserved.".replace(new RegExp("2016","g"),n)};this.ContactUsClick=function(){$("#contactUsContainer").fadeIn()}}return n}();window._javaScriptCache["/FORMSLOGIN/MODULES/LOGIN/FOOTER"]=formslogin_modules_Login_footer;formslogin_modules_Login_footer.prototype.referencePath="/FORMSLOGIN/MODULES/LOGIN/FOOTER";formslogin_modules_Login_root=function(){function n(){var n=this;this.bPasswordResetDataLoaded=!1;this.ShowingForgotPassword=ko.observable(!1);this.theView=null;this.passwordMod=null;this.CurrentMod=ko.observable();this.returnToLoginMod=function(){n.CurrentMod(n.userNameMod);n.passwordMod=null;n.ShowingForgotPassword(!1)};this.usernameReceived=function(t,i){n.passwordMod=new formslogin_modules_Login_password(t,i,n.returnToLoginMod);n.CurrentMod(n.passwordMod);n.ShowingForgotPassword(!0)};this.userNameMod=new formslogin_modules_Login_username(this.usernameReceived);this.ForgotPasswordClick=function(){var t,i;null!==n.theView&amp;&amp;(t=$(n.theView).find("#reloadPasswordContainer"),n.bPasswordResetDataLoaded?(i=$("#UserNameInput").val(),$("#resetUsernameInput").val(i),t.fadeIn()):t.find(".content").load("/formslogin/requestPasswordReset.aspx",function(){var i=$("#UserNameInput").val();$("#resetUsernameInput").val(i);n.bPasswordResetDataLoaded=!0;t.fadeIn()}))};this.DismissPasswordReset=function(){null!==n.theView&amp;&amp;$(n.theView).find("#reloadPasswordContainer").hide()};this.DismissContactUs=function(){null!==n.theView&amp;&amp;$(n.theView).find("#contactUsContainer").hide()};this.activate=function(t,i){n.CurrentMod(n.userNameMod);$(i).parent().css({height:"100%",width:"100%","text-align":"center",position:"relative"});n.theView=i}}return n}();window._javaScriptCache["/FORMSLOGIN/MODULES/LOGIN/ROOT"]=formslogin_modules_Login_root;formslogin_modules_Login_root.prototype.referencePath="/FORMSLOGIN/MODULES/LOGIN/ROOT"</pre></body></html>