Проверка сложности пароля

#1 12 ноября 2010 в 01:15
Попросил один человечек сделать проверку сложности пароля при регистрации.
Пишу тут т.к. в блог не охота записывать две строчки кода.
Кому интересно — глянте. Может что посоветуете.

1) Открываем файл com_registration.tpl своего шаблона

И вместо строк

  1. <tr>
  2. <td valign="top" class=""><strong>{$LANG.PASS}:</strong></td>
  3. <td valign="top" class="">
  4. <input name="pass" id="pass1input" type="password" size="30" onchange="{literal}$('#passcheck').html('');{/literal}"/>
  5. <span class="regstar">*</span>
  6. </td>
  7. </tr>

напишем


  1. <tr>
  2. <td valign="top" class=""><strong>{$LANG.PASS}:</strong></td>
  3. <td valign="top" class="">
  4. <input name="pass" id="pass1input" type="password" size="30" onchange="{literal}$('#passcheck').html('');{/literal}"/>
  5. <span class="regstar">*</span>
  6. <div id="indicator"></div>
  7. </td>
  8. </tr>

2) Идем в components\registration\js\check.js и тут в самом начале вставим такие строки


  1. $(function() {
  2. $('#pass1input').keyup(function () {
  3. var pass = $('#pass1input').val();
  4. if (/([\s])/.test(pass)){
  5. $("#indicator").html('<div style="color:#ff0000; width:200px; height:10px;margin:5px;">Недопустимые символы!</div>');
  6. $("#pass1input").val(''); return;
  7. } else {
  8. var strong = 0;
  9. var line;
  10. if (pass.length > 6) { // пароль не меньше 6 символов?
  11. if (/([0-9]+)/.test(pass)){ strong++; } // есть ли цифры?
  12. if (/([a-z]+)/.test(pass)){ strong++; } // ... буквы в нижнем регистре?
  13. if (/([A-Z]+)/.test(pass)){ strong++; } // ... буквы в верхнем регистре?
  14. if (/\W/.test(pass)){ strong++; } // ... спец символы?
  15. }
  16. }
  17. switch (strong) {
  18. case (1): line = '<div style="background:#ff0000; width:80px; height:10px;margin:5px;"></div>Очень Простой';break;
  19. case (2): line = '<div style="background:#edc422; width:120px; height:10px;margin:5px;"></div>Простой';break;
  20. case (3): line = '<div style="background:#edc422; width:160px; height:10px;margin:5px;"></div>Нормальный';break;
  21. case (4): line = '<div style="background:#2dda2f; width:200px; height:10px;margin:5px;"></div>Надежный';break;
  22. default : line = '<div style="background:#ff0000; width:40px; height:10px;margin:5px;"></div>Очень Короткий';break;
  23. }
  24. $("#indicator").html(line);
  25. });
  26. });
  27.  
Все. Теперь во время ввода пароля чуть ниже поля для ввода будет появлятьсЯ цветная
полоска и текст.
#2 12 ноября 2010 в 01:46
отлично Санек))))))))))))))))) респект тебе 5+
#3 12 ноября 2010 в 08:35
Спасибо! Полезная штука.
#4 12 ноября 2010 в 09:13
Вот еще был бы пароль в закодированном виде сохранен. А то он в открытом виде в файле записан.
#5 12 ноября 2010 в 18:38
Вы Вит скриптом не ошиблись? zlo
— какой "файл"....?
— какой "открытый вид" ?

Сначала разберитесь с системой потом пыль пускай(те). zlo
#6 12 ноября 2010 в 18:57

А то он в открытом виде в файле записан.


Эт в каком? Расскажите… :)
#7 12 ноября 2010 в 22:25

Вот еще был бы пароль в закодированном виде сохранен. А то он в открытом виде в файле записан.

Вит
Он наверное имеет в виду конфиг. Там пас от бд не шифрованный)))
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.