|
|
|
|
|
Проверка надежности пароля
Скрипт, который проверяет сложность пароля пользователя во время регистрации Что для этого нужно; Заходим в меню редактирования шаблонов, открываем код шаблона "Формы регистрации пользователей" 1. Находим там $РАSSWORD_FL$ 2. Сразу после него вставляем этот скрипт Code <div id="mypassword_text" style="display:inline;"></div> <div id="mypassword_bar" style="font-size: 1px; height: 3px; width: 0px; "></div></td></tr><SCRIPT type="text/javascript"> var m_strUpperCase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ_"; var m_strLowerCase = "abcdefghijklmnopqrstuvwxyz-"; var m_strNumber = "0123456789"; function checkPassword(strPassword) { var nScore = 0; if (strPassword.length < 6) { nScore += 0; } else if (strPassword.length > 5 && strPassword.length < 10) { nScore += 11; } else if (strPassword.length > 9) { nScore += 33; } var nUpperCount = countContain(strPassword, m_strUpperCase); var nLowerCount = countContain(strPassword, m_strLowerCase); var nLowerUpperCount = nUpperCount + nLowerCount; if (nUpperCount == 0 && nLowerCount != 0) { nScore += 10; } else if (nUpperCount != 0 && nLowerCount == 0) { nScore += 10; } else if (nUpperCount != 0 && nLowerCount != 0) { nScore += 26; } var nNumberCount = countContain(strPassword, m_strNumber); if (nNumberCount >= 2) { nScore += 10; } if (nNumberCount >= 4) { nScore += 26; } if (nNumberCount != 0 && nLowerUpperCount != 0) { nScore += 5; } return nScore; } function runPassword(strPassword, strFieldID) { var nScore = checkPassword(strPassword); var ctlBar = document.getElementById(strFieldID + "_bar"); var ctlText = document.getElementById(strFieldID + "_text"); if (!ctlBar || !ctlText) return; ctlBar.style.width = nScore + "%"; if (nScore == 100) { var strText = "Отличный пароль! Главное не забыть его. :)"; var strColor = "limegreen"; } else if (nScore >= 80) { var strText = "Очень хороший пароль."; var strColor = "blue"; } else if (nScore >= 65) { var strText = "Это видно, что пароль, можно уже и остановиться!"; var strColor = "dodgerblue"; } else if (nScore >= 50) { var strText = "Во-во, это ещё ничего!.."; var strColor = "mediumturquoise"; } else if (nScore >= 25) { var strText = "Слабоват парольчик."; var strColor = "yellowgreen"; } else if (nScore != 0) { var strText = "Ужас. (qwerty и то лучше :)) "; var strColor = "firebrick"; } else { var strText = ""; var strColor = "black"; } ctlBar.style.backgroundColor = strColor; ctlText.innerHTML = "<span style='color: " + strColor + ";'> " + strText + " - " + nScore + "%</span>"; } function countContain(strPassword, strCheck) { var nCount = 0; for (i = 0; i < strPassword.length; i++) { if (strCheck.indexOf(strPassword.charAt(i)) > -1) { nCount++; } } return nCount; } document.getElementById("siF14").onkeyup="runPassword(this.value, 'mypassword')"; </SCRIPT>
html-cсылка на публикацию |
|
BB-cсылка на публикацию |
|
Прямая ссылка на публикацию |
|
|
|
|
|
|
|
|
Реклама |
|
|
|