Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Проверка" стойкости" пароля
XAkEPДата: Понедельник, 12.01.2009, 12:53 | Сообщение # 1
Генералиссимус
Группа: Админ
Сообщений: 116
Репутация: 21
Статус: Offline
[spoiler]</script></td></tr><tr><td class="manTdSep" colspan="2" height="10"><hr class="manHr"></td></tr>
<?endif?>
<script type="text/javascript">
var m_strUpperCase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var m_strLowerCase = "abcdefghijklmnopqrstuvwxyz";
var m_strNumber = "0123456789";
var m_strCharacters = "_-"

// Check password
function checkPassword(strPassword)
{
// Reset combination count
var nScore = 0;

// Password length
// -- Less than 4 characters
if (strPassword.length < 5)
{
nScore += 10;
}
// -- 5 to 7 characters
else if (strPassword.length > 4 && strPassword.length < 8)
{
nScore += 20;
}
// -- 8 or more
else if (strPassword.length > 7)
{
nScore += 50;
}

// Letters
var nUpperCount = countContain(strPassword, m_strUpperCase);
var nLowerCount = countContain(strPassword, m_strLowerCase);
var nLowerUpperCount = nUpperCount + nLowerCount;
// -- Letters are all lower case
if (nUpperCount == 0 && nLowerCount != 0)
{
nScore += 20;
}
// -- Letters are upper case and lower case
else if (nUpperCount != 0 && nLowerCount != 0)
{
nScore += 40;
}

// Numbers
var nNumberCount = countContain(strPassword, m_strNumber);
// -- 1 number
if (nNumberCount == 1)
{
nScore += 20;
}
// -- 3 or more numbers
if (nNumberCount >= 3)
{
nScore += 40;
}

// Characters
var nCharacterCount = countContain(strPassword, m_strCharacters);
// -- 1 character
if (nCharacterCount == 1)
{
nScore += 20;
}
// -- More than 1 character
if (nCharacterCount > 1)
{
nScore += 50;
}

// Bonus
// -- Letters and numbers
if (nNumberCount != 0 && nLowerUpperCount != 0)
{
nScore += 4;
}
// -- Letters, numbers, and characters
if (nNumberCount != 0 && nLowerUpperCount != 0 && nCharacterCount != 0)
{
nScore += 6;
}
// -- Mixed case letters, numbers, and characters
if (nNumberCount != 0 && nUpperCount != 0 && nLowerCount != 0 && nCharacterCount != 0)
{
nScore += 10;
}

return nScore;
}

// Runs password through check and then updates GUI
function runPassword(strPassword, strFieldID)
{
// Check password
var nScore = checkPassword(strPassword);

// Get controls
var ctlBar = document.getElementById(strFieldID + "_bar");
var ctlText = document.getElementById(strFieldID + "_text");
if (!ctlBar || !ctlText)
return;

// Set new width
ctlBar.style.width = nScore + "%";

// Color and text
// -- Безупречный
if (nScore >= 45)
{
var strText = "Отличный пароль!";
var strColor = "#0ca908";
}
// -- Хороший
else if (nScore >= 40)
{
var strText = "Хороший";
var strColor = "#00CCFF";
}
// -- Довольно нормальный
else if (nScore >= 35)
{
var strText = "Достаточно неплохо";
var strColor = "#5a74e3";
}
// -- Нормальный
else if (nScore >= 30)
{
var strText = "Нормально";
var strColor = "#FF6600";
}
// -- Слабый
else if (nScore >= 20)
{
var strText = "Слабенько";
var strColor = "#e7d61a";
}
// -- Очень плохой
else
{
var strText = "Ужас. qwerty и то лучше";
var strColor = "#e71a1a";
}
ctlBar.style.backgroundColor = strColor;
ctlText.innerHTML = "<span style='color: " + strColor + ";'>" + strText + "</span>";
}

// Checks a string for a list of characters
function countContain(strPassword, strCheck)
{
// Declare variables
var nCount = 0;

for (i = 0; i < strPassword.length; i++)
{
if (strCheck.indexOf(strPassword.charAt(i)) > -1)
{
nCount++;
}
}

return nCount;
}
</script>
%IF($PASSWORD_FL$)%
%ENDIF%
%IF($PASSWORD1_FL$)%
%ENDIF%
<table class="manTable" id="siM63" width="100%" border="0" cellpadding="2" cellspacing="1">
<tbody>
<tr id="siM45"><td class="manTd1" id="siM46">$PASSWORD_SIGN$</td><td class="manTd2" id="siM47"><input id="siF14" class="manFlPassw" name="password" size="20" style="width: 100%; font-weight: 500; font-style: normal; color: rgb(0, 0, 0);" maxlength="15" onkeyup="runPassword(this.value, 'mypassword');" type="password"></td></tr>
<tr id="siM48"><td class="manTd1" id="siM49">$PASSWORD1_SIGN$</td><td class="manTd2" id="siM50">$PASSWORD1_FL$</td></tr>
<tr>
<td width="130" height="25">Защита пароля:</td>
<td><b><div id="mypassword_text" align="center">Для начала введите пароль!</div></b>
<div style="width: 75%;">
<div id="mypassword_bar" style="border: 1px solid white; font-size: 1px; height: 2px; width: 0px;"></div></div></td>
</tr>

Это всё чудо вставляем вот так:Как всегда заходим в Админ панель--Управление дизайном--Форма регистрации пользователей[/spoiler]


Заработай деньги в интернете!

 
alex_xakepДата: Среда, 18.02.2009, 12:36 | Сообщение # 2
Рядовой
Группа: Пользователь
Сообщений: 3
Репутация: 0
Статус: Offline
мне почему то пишет не закрыт один или более условных операторов <if>. Походу ты ошибся.
 
XAkEPДата: Среда, 18.02.2009, 14:23 | Сообщение # 3
Генералиссимус
Группа: Админ
Сообщений: 116
Репутация: 21
Статус: Offline
всё правильно может ты чё то не так делаешь

Заработай деньги в интернете!

 
FalcOnДата: Пятница, 20.03.2009, 14:44 | Сообщение # 4
Рядовой
Группа: Пользователь
Сообщений: 1
Репутация: 0
Статус: Offline
хак, внатуре иф не закрыт , счас ищу где не дополнил!
 
CyMpaKДата: Пятница, 01.05.2009, 12:28 | Сообщение # 5
Рядовой
Группа: Пользователь
Сообщений: 1
Репутация: 0
Статус: Offline
Ну так что когда найдете ошибку
 
  • Страница 1 из 1
  • 1
Поиск: