Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $(document).ready(function () {
- var authListErrors = [];
- var alnum = /^[a-z0-9]*$/;
- var authErrorsObject = {
- "mail_emptyField": "Your mailbox really needs a name",
- "mail_alnumField": "Your name can only made out of letters and numb3rz",
- "pass_emptyField": "Empty password is not most secure",
- "pass_insecField": "Password is too short, 6 characters at least"
- };
- var preventLogin = true;
- var fldAuthMail = $(".authTextFields").eq(0);
- var fldAuthPass = $(".authTextFields").eq(1);
- var objAuthErrorSpan = $("#loginError");
- objAuthErrorSpan.css('opacity', 0);
- function AuthErrorManager( listArray, contextFlag, isError ) {
- if (listArray.indexOf( contextFlag ) === -1 && isError) {
- listArray.push( contextFlag );
- } else if (listArray.indexOf( contextFlag ) !== 1 && !isError) {
- i = listArray.indexOf( contextFlag );
- listArray.splice(i, 1);
- }
- }
- function outputErrors( errorObject, listArray, glue){
- var retStr = '';
- if( listArray.length ){
- $.each( listArray, function( i, v ){
- if( retStr ) retStr += glue;
- retStr += errorObject[v];
- });
- }
- return retStr;
- }
- function changeClasses( jQueryInputElement, jQueryErrorElement, listArray, okClassName, errClassName ){
- //PROBLEM
- if( listArray.length ){
- if( !jQueryInputElement.hasClass( errClassName ) ) doErrTransition( jQueryErrorElement );
- jQueryInputElement.addClass( errClassName );
- jQueryInputElement.removeClass( okClassName );
- }else{
- if( !jQueryInputElement.hasClass( okClassName ) ) doOkTransition( jQueryErrorElement );
- jQueryInputElement.addClass( okClassName );
- jQueryInputElement.removeClass( errClassName );
- }
- }
- function checkSubmit( arrayListArrays ){
- $.each( arrayListArrays, function(i, v){
- if( v.length ) {
- return true;
- }
- });
- return false;
- }
- function doErrTransition( element ){
- element.animate({"opacity": 1});
- }
- function doOkTransition( element ){
- element.animate( {"opacity": 0}, function () {
- element.empty();
- });
- }
- fldAuthMail.focusout(function () {
- var boolEmpty = ($(this).val().trim() === '') ? true : false;
- var boolNotAlnum = (alnum.test($(this).val())) ? false : true;
- AuthErrorManager( authListErrors, "mail_emptyField", boolEmpty );
- AuthErrorManager( authListErrors, "mail_alnumField", boolNotAlnum );
- objAuthErrorSpan.html( outputErrors( authErrorsObject, authListErrors, '<br>') );
- changeClasses( fldAuthMail, objAuthErrorSpan, authListErrors, "correctInput", "incorrectInput" );
- preventLogin = checkSubmit( [authListErrors] );
- });
- fldAuthPass.focusout(function () {
- var boolEmpty = ($(this).val().trim() === '') ? true : false;
- var boolLength = ($(this).val().length < 6) ? true : false;
- AuthErrorManager( authListErrors, "pass_emptyField", boolEmpty );
- AuthErrorManager( authListErrors, "pass_insecField", boolLength );
- objAuthErrorSpan.html( outputErrors( authErrorsObject, authListErrors, '<br>') );
- changeClasses( fldAuthPass, objAuthErrorSpan, authListErrors, "correctInput", "incorrectInput" );
- preventLogin = checkSubmit( [authListErrors] );
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement