var CscopeInfo=window.CscopeInfo||{};!function(c){var l,f=!1,p=!0,u={},e=environmentVariables.envVariables(),g=e.environment;"prod"==g&&(console.log=function(){}),u=function(){var e={},n=window.location.search,o=new URLSearchParams(n);if(o.has("paramKey")){var t=o.get("paramKey");if("invite"==t){var r=o.get("team"),i=decodeURIComponent(o.get("user")),s=o.get("key"),a=o.get("code"),l=o.get("subTeam");e={paramKey:t,team:r,user:i,key:s,code:a,subTeam:l}}else if("signOut"==t||"signIn"==t||"register"==t){var i=decodeURIComponent(o.get("user"));e={paramKey:t,user:i}}else if("report"==t){var g=o.get("device"),c=o.get("report"),u=o.get("startend"),m=o.get("levAgg"),d=o.get("filterMode");e={paramKey:t,device:g,report:c,startend:u,filterMode:d,levAgg:m}}else e="eula"==t?(console.log("eula"),console.log("Need to check if signed in"),p=!(f=!0),{paramKey:t}):{error:"NoParamKey"}}o.has("code")&&(e.code=o.get("code"));return e}();var m,n={UserPoolId:_config[e.environment].cognito.userPoolId,ClientId:_config[e.environment].cognito.userPoolClientId};function d(e){return new AmazonCognitoIdentity.CognitoUser({Username:v(e),Pool:m})}function v(e){return e.replace("@","-at-")}function o(e){var n,o,t,r,i,s=c("#emailInputSignin").val(),a=c("#passwordInputSignin").val();e.preventDefault(),n=s,o=a,t=function(){console.log("Successfully Logged In"),console.log("Called AuthToken"),cognitoUser=m.getCurrentUser(),console.log("Pool "+JSON.stringify(m)),console.log("Coguser "+JSON.stringify(cognitoUser)),cognitoUser?cognitoUser.getSession(function(e,n){if(e)console.log("Error 1 "+e.message);else if(n.isValid())if(l=n.getIdToken().getJwtToken()){var o=new CscopeUser(l,g);o.checkIfIsAdmin(function(e){return authToken=l,console.log("Eula user "+o.eulaAccepted),o.eulaAccepted||null==u.user||null==u.key||null==u.team?o.eulaAccepted?void(null!=u.user&&null!=u.key&&null!=u.team?(console.log("Going to invite"),window.location.href="/invite.html"+I("invite")):(console.log("Going to index"),window.location.href="/index.html")):(console.log("Eula not accepted"),alert("Please accept the Terms of Service before using cscope.info."),void(window.location.href="/signin.html?paramKey=eula")):(console.log("Eula not accepted before Team invite"),alert("Please accept the Terms of Service before using cscope.info and accepting a Team Invitation."),void(window.location.href="/signin.html?paramKey=eula&ref=invite.html"+I("inviteaftereula")))})}else CscopeInfo.checkTokenState(),console.log("No token (cog-auth)");else console.error("Invalid session")}):log.logError("No user logged in")},r=function(e){alert(e)},i=new AmazonCognitoIdentity.AuthenticationDetails({Username:v(n),Password:o}),d(n).authenticateUser(i,{onSuccess:t,onFailure:r})}function t(e){var n,o,t,r,i,s,a=c("#emailInputRegister").val(),l=c("#passwordInputRegister").val(),g=c("#password2InputRegister").val();e.preventDefault(),l===g?(o=l,t=function(e){var n=e.user;console.log("user name is "+n.getUsername()),u.user=n.getUsername();window.location.href="verify.html"+I("register")},r=function(e){alert(e)},i={Name:"email",Value:n=a},s=new AmazonCognitoIdentity.CognitoUserAttribute(i),m.signUp(v(n),o,[s],null,function(e,n){e?r(e):t(n)})):alert("Passwords do not match")}function r(e){var n,o,t,r=c("#emailInputVerify").val(),i=c("#codeInputVerify").val();e.preventDefault(),n=i,o=function(e){console.log("call result: "+e),console.log("Successfully verified"),alert("Verification successful. You will now be redirected to the login page."),window.location.href="./signin.html"+I("signIn")},t=function(e){alert(e)},d(r).confirmRegistration(n,!0,function(e,n){e?t(e):o(n)})}function I(e){return returnParams="","invite"==e?(returnParams+="?paramKey=invite",returnParams+="&team="+u.team,returnParams+="&subTeam="+u.subTeam,returnParams+="&user="+encodeURIComponent(u.user),returnParams+="&key="+u.key,console.log("PARAMS "+JSON.stringify(returnParams))):"register"==e?(returnParams+="?paramKey=register",returnParams+="&user="+encodeURIComponent(u.user)):"signIn"==e?(returnParams+="?paramKey=signIn",returnParams+="&user="+encodeURIComponent(u.user)):(e="inviteaftereula")&&(returnParams+="&team="+u.team,returnParams+="&subTeam="+u.subTeam,returnParams+="&user="+encodeURIComponent(u.user),returnParams+="&key="+u.key),returnParams}console.log("Params "+JSON.stringify(u)),null==u.paramKey||"signOut"!=u.paramKey&&"invite"!=u.paramKey&&"register"!=u.paramKey&&"signIn"!=u.paramKey||null==u.user||"undefined"==u.user||(console.log("Changing mail to "+u.user),c("#emailInputSignin").length?c("#emailInputSignin").val(u.user.replace("-at-","@")):c("#emailInputVerify").length?c("#emailInputVerify").val(u.user.replace("-at-","@")):c("#emailInputRegister").length&&c("#emailInputRegister").val(u.user.replace("-at-","@"))),"code"in u&&(console.log("Changing code to "+u.code),c("#codeInputVerify").val(u.code)),_config[e.environment].cognito.userPoolId&&_config[e.environment].cognito.userPoolClientId&&_config[e.environment].cognito.region?(m=new AmazonCognitoIdentity.CognitoUserPool(n),"undefined"!=typeof AWSCognito&&(AWSCognito.config.region=_config[e.environment].cognito.region),CscopeInfo.signOut=function(){m&&m.getCurrentUser()&&m.getCurrentUser().signOut()},CscopeInfo.getUserForReset=function(e){return d(e)},CscopeInfo.checkTokenState=function(e){console.log("Checking session state...");var n=m.getCurrentUser();n?n.getSession(function(e,n){e?console.log("error"):console.log("session "+n.isValid())}):(console.log("No user signed in"),console.log("Params "+JSON.stringify(u)),"/signin.html"==window.location.pathname&&"eula"==u.paramKey&&e())},CscopeInfo.accessToken=new Promise(function(o,t){console.log("Called AuthToken");var e=m.getCurrentUser();e?e.getSession(function(e,n){e?(console.log("Error 1 "+e.message),t(e)):n.isValid()?(l=n.getAccessToken().getJwtToken(),o(n.getAccessToken().getJwtToken())):(console.error("Invalid session"),o(null))}):(console.log("No one is logged in"),p=!(f=!1),o(null))}),CscopeInfo.authToken=new Promise(function(o,t){console.log("Called AuthToken");var e=m.getCurrentUser();e?e.getSession(function(e,n){e?(console.log("Error 1 "+e.message),t(e)):n.isValid()?(l=n.getIdToken().getJwtToken(),o(n.getIdToken().getJwtToken())):(console.error("Invalid session"),o(null))}):(console.log("No one is logged in"),p=!(f=!1),o(null))}),c(function(){!function(){if(!document.getElementById("eula"))return;document.getElementById("eula").addEventListener("enableSignInButton",function(e){console.log("enableSignInButton "+JSON.stringify(e.detail)),c(".box").remove()})}(),c("#signinForm").submit(o),c("#registrationForm").submit(t),c("#verifyForm").submit(r),c("#logo").click(function(){new CscopeUser(l,g).eulaAccepted?window.location="./index.html":console.log("User EULA not accepted - link not provided")}),console.log("SetTC "+f+" SetSignIn "+p),f?(c("#eula").show(),c("#signinForm").length&&c("#signinForm").hide(),c("#signUpFromSigninContainer").length&&c("#signUpFromSigninContainer").hide(),c("#forgottenPassword").hide()):p&&(c("#eula").hide(),c("#signinForm").length&&c("#signinForm").show(),c("#forgottenPassword").show())}),c("#eula").on("eulaBoxReady",function(){console.log("eulaBox ready for init")})):c("#noCognitoMessage").show()}(jQuery);