Пишу тут т.к. в блог не охота записывать две строчки кода.
Кому интересно — глянте. Может что посоветуете.
1) Открываем файл com_registration.tpl своего шаблона
И вместо строк
<tr> <td valign="top" class=""><strong>{$LANG.PASS}:</strong></td> <td valign="top" class=""> <input name="pass" id="pass1input" type="password" size="30" onchange="{literal}$('#passcheck').html('');{/literal}"/> <span class="regstar">*</span> </td> </tr>
напишем
<tr> <td valign="top" class=""><strong>{$LANG.PASS}:</strong></td> <td valign="top" class=""> <input name="pass" id="pass1input" type="password" size="30" onchange="{literal}$('#passcheck').html('');{/literal}"/> <span class="regstar">*</span> <div id="indicator"></div> </td> </tr>
2) Идем в components\registration\js\check.js и тут в самом начале вставим такие строки
$(function() { $('#pass1input').keyup(function () { var pass = $('#pass1input').val(); if (/([\s])/.test(pass)){ $("#indicator").html('<div style="color:#ff0000; width:200px; height:10px;margin:5px;">Недопустимые символы!</div>'); $("#pass1input").val(''); return; } else { var strong = 0; var line; if (pass.length > 6) { // пароль не меньше 6 символов? if (/([0-9]+)/.test(pass)){ strong++; } // есть ли цифры? if (/([a-z]+)/.test(pass)){ strong++; } // ... буквы в нижнем регистре? if (/([A-Z]+)/.test(pass)){ strong++; } // ... буквы в верхнем регистре? if (/\W/.test(pass)){ strong++; } // ... спец символы? } } switch (strong) { case (1): line = '<div style="background:#ff0000; width:80px; height:10px;margin:5px;"></div>Очень Простой';break; case (2): line = '<div style="background:#edc422; width:120px; height:10px;margin:5px;"></div>Простой';break; case (3): line = '<div style="background:#edc422; width:160px; height:10px;margin:5px;"></div>Нормальный';break; case (4): line = '<div style="background:#2dda2f; width:200px; height:10px;margin:5px;"></div>Надежный';break; default : line = '<div style="background:#ff0000; width:40px; height:10px;margin:5px;"></div>Очень Короткий';break; } $("#indicator").html(line); }); });
полоска и текст.