Украшаем проверку сложности пароля. Вроде неплохо получается.
скрин:
Идём: "Дизайн" => "Пользователи" => "Страница регистрации пользователей"
Между head и /head вставляем:
Код:
<script src="http://jqueryjs.googlecode.com/files/jquery-1.2.6.min.js" type="text/javascript"></script> <script type="text/javascript"> $.fn.passwordStrength = function( options ){ return this.each(function(){ var that = this;that.opts = {}; that.opts = $.extend({}, $.fn.passwordStrength.defaults, options); that.div = $(that.opts.targetDiv); that.defaultClass = that.div.attr('class'); that.percents = (that.opts.classes.length) ? 100 / that.opts.classes.length : 100; v = $(this) .keyup(function(){ if( typeof el == "undefined" ) this.el = $(this); var s = getPasswordStrength (this.value); var p = this.percents; var t = Math.floor( s / p ); if( 100 <= s ) t = this.opts.classes.length - 1; this.div .removeAttr('class') .addClass( this.defaultClass ) .addClass( this.opts.classes[ t ] ); }) .after('') .next() .click(function(){ $(this).prev().val ( randomPassword() ).trigger('keyup'); return false; }); }); function getPasswordStrength(H){ var D=(H.length); if(D>5){ D=5 } var F=H.replace(/[0-9]/g,""); var G=(H.length-F.length); if(G>3){G=3} var A=H.replace(/\W/g,""); var C=(H.length-A.length); if(C>3){C=3} var B=H.replace(/[A-Z]/g,""); var I=(H.length-B.length); if(I>3){I=3} var E=((D*10)-20)+(G*10)+(C*15)+(I*10); if(E<0){E=0} if(E>100){E=100} return E } function randomPassword() { var chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$_+"; var size = 10; var i = 1; var ret = "" while ( i <= size ) { $max = chars.length-1; $num = Math.floor(Math.random()*$max); $temp = chars.substr($num, 1); ret += $temp; i++; } return ret; } }; $.fn.passwordStrength.defaults = { classes : Array('is10','is20','is30','is40','is50','is60','is70','is80','is90','is100'), targetDiv : '#passwordStrengthDiv', cache : {} } $(document) .ready(function(){ $('input[name="password"]').passwordStrength(); }); </script>
Добовляем в css сайта:
Код:
.is0{background:url("http://kbh.mg.by/progressImg1.png") no-repeat 0 0;width:138px;height:7px;} .is10{background-position:0 -7px;} .is20{background-position:0 -14px;} .is30{background-position:0 -21px;} .is40{background-position:0 -28px;} .is50{background-position:0 -35px;} .is60{background-position:0 -42px;} .is70{background-position:0 -49px;} .is80{background-position:0 -56px;} .is90{background-position:0 -63px;} .is100{background-position:0 -70px;}
Дальше: "Дизайн" => "Пользователи" => "Форма регистрации пользователей"
И заменяем:
Код:
<?if($PASSWORD_FL$)?> <tr id="siM45"><td class="manTd1" id="siM46">$PASSWORD_SIGN$</td><td class="manTd2" id="siM47">$PASSWORD_FL$</td> </tr> <?endif?>
На:
Код:
<?if($PASSWORD_FL$)?> <tr id="siM45"><td class="manTd1" id="siM46">$PASSWORD_SIGN$</td><td class="manTd2" id="siM47">$PASSWORD_FL$</td> </tr><tr><td>Проверка безопасности: </td><td><div id="passwordStrengthDiv" class="is0"></div></td> </tr> <?endif?>
Все