let $auth; let $pass; let $username; let $loginButton; let $recoverPass; let $errorMessage; fnLogin = function(){ // Get auth type let auth = $auth.val(); if (auth == null){ $auth.val(authLocal); } let passValid = true; if($auth.val()===authLocal && ($pass.val().length < 8 || $pass.val().toLowerCase() === $pass.val() || $pass.val().toUpperCase() === $pass.val() || $pass.val().search(/[0-9]/) < 0)){ passValid = false; } if($auth.val()===authLocal){ let sha1HashToBase64 = CryptoJS.enc.Base64.stringify(CryptoJS.SHA1(CryptoJS.enc.Utf8.parse($pass.val()))); $pass.val(sha1HashToBase64); }else if ($auth.val()===authLDAP){ $pass.val(b64EncodeUnicode($pass.val())); } if($username.val() !== "" && $pass.val() !== ""){ formsUtils.loadWindowPostSelf("login.prelogin.ControlUserAction", {username: $username.val(), password: $pass.val(), langId: langId, passValid: passValid, auth: $auth.val()}); } }; fnLoginSAML = function(forceAuth){ if (typeof forceAuth === 'undefined'){ forceAuth = false; } formsUtils.loadWindowPostSelf("login.prelogin.LoginSAMLAction", {forceAuth: forceAuth}); }; $(function(){ $auth = $("#auth"); $pass = $("#pass"); $username = $("#username"); $loginButton = $("#loginButton"); $recoverPass = $("#recoverPass"); $errorMessage = $("#errorMessage"); // ATOMICVARIABLES.loadHideShowPassword(); $(document).on("keypress", function(e) { if (e.which === 13) { if ($auth.val() === authSAML){ fnLoginSAML(); }else{ fnLogin(); } } }); $recoverPass.on("click", function(){ formsUtils.loadWindowPostSelf("login.prelogin.OpenSendMailPasswordAction", {username: $username.val(), langId: langId}); }); $loginButton.on("click", function(){ if ($auth.val() === authSAML){ fnLoginSAML(); }else{ fnLogin(); } }); $username.on("blur", function(){ $auth.val(loginUtils.fnAuthenticateType($username.val())); if($auth.val() === authLocal){ $recoverPass.removeClass("d-none"); $recoverPass.addClass("d-block"); }else{ $recoverPass.removeClass("d-block"); $recoverPass.addClass("d-none"); } }); $("#localLogin").on("click", function(){ formsUtils.loadWindowPostSelf("login.prelogin.OpenLoginAction", {forceLocalLogin: true, langId: langId}); }); $("#resetLogin").on("click", function(){ fnLoginSAML(true); }); if(errorMessage !== ""){ $recoverPass.removeClass("d-block"); $recoverPass.addClass("d-none"); $errorMessage.addClass("d-block"); $errorMessage.removeClass("d-none"); } let widthScreen = window.screen.availWidth; const $divMissatge = $("#resolutionBrowser"); if (widthScreen < 1920) { $divMissatge.html(labels.getLbl("LOGIN", 44)); $divMissatge.removeClass("d-none"); $divMissatge.addClass("d-block"); }else{ $divMissatge.removeClass("d-block"); $divMissatge.addClass("d-none"); } // --- Control loginAttempts --- if (loginAttempts != null && parseInt(loginAttempts) === parseInt(loginAttemptsWarning-1)){ dialogsUtils.showDialogInfo({title: labels.getLbl("LOGIN", 42), message: labels.getLbl("LOGIN", 43)}); }else if (loginAttempts != null && parseInt(loginAttempts) === parseInt(loginAttemptsWarning) && (statusCode !== "blocked_user")){ dialogsUtils.showDialogInfo({title: labels.getLbl("LOGIN", 42), message: labels.getLbl("LOGIN", 40) + " " + labels.getLbl("LOGIN", 41)}); } });