| Current Path : /home/lejardintz/www/media/foundry/3.1/scripts/ |
| Current File : /home/lejardintz/www/media/foundry/3.1/scripts/passwordstrength.min.js |
!function(){var moduleFactory=function($){var module=this,exports=function(){jQuery=$,function($){var passwordStrength=new function(){this.countRegexp=function(val,rex){var match=val.match(rex);return match?match.length:0},this.getStrength=function(val,minLength){var len=val.length;if(minLength>len)return 0;var nums=this.countRegexp(val,/\d/g),lowers=this.countRegexp(val,/[a-z]/g),uppers=this.countRegexp(val,/[A-Z]/g),specials=len-nums-lowers-uppers;if(nums==len||lowers==len||uppers==len||specials==len)return 1;
var strength=0;return nums&&(strength+=2),lowers&&(strength+=uppers?4:3),uppers&&(strength+=lowers?4:3),specials&&(strength+=5),len>10&&(strength+=1),strength},this.getStrengthLevel=function(val,minLength){var strength=this.getStrength(val,minLength),val=1;return 0>=strength?val=1:strength>0&&4>=strength?val=2:strength>4&&8>=strength?val=3:strength>8&&12>=strength?val=4:strength>12&&(val=5),val}};$.fn.password_strength=function(options){var settings=$.extend({container:null,minLength:6,texts:{1:"Too weak",2:"Weak password",3:"Normal strength",4:"Strong password",5:"Very strong password"},onCheck:null},options);
return this.each(function(){var container=null;settings.container?container=$(settings.container):(container=$("<span/>").attr("class","password_strength"),$(this).after(container)),$(this).keyup(function(){var val=$(this).val(),level=passwordStrength.getStrengthLevel(val,settings.minLength);if(val.length>0){var _class="password_strength_"+level;!container.hasClass(_class)&&level in settings.texts&&container.text(settings.texts[level]).attr("class","password_strength "+_class)}else container.text("").attr("class","password_strength");
settings.onCheck&&settings.onCheck.call(this,level)})})}}(jQuery)};exports(),module.resolveWith(exports)};FD31.module("passwordstrength",moduleFactory)}();