From f66aaef4e353942d6d1711717d99f5d597482b0a Mon Sep 17 00:00:00 2001
From: karailiev <karailiev@ispconfig3>
Date: Thu, 20 Nov 2008 15:03:27 -0500
Subject: [PATCH] + added password strength meter
---
interface/web/js/scrigo.js.php | 129 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 128 insertions(+), 1 deletions(-)
diff --git a/interface/web/js/scrigo.js b/interface/web/js/scrigo.js.php
similarity index 70%
rename from interface/web/js/scrigo.js
rename to interface/web/js/scrigo.js.php
index 1b51dd0..6e6affb 100644
--- a/interface/web/js/scrigo.js
+++ b/interface/web/js/scrigo.js.php
@@ -1,3 +1,9 @@
+<?php
+ session_start();
+ include('../../lib/config.inc.php');
+ include_once(ISPC_ROOT_PATH.'/web/js/lib/lang/'.$_SESSION['s']['language'].'_javascript.lng');
+?>
+
redirect = '';
function loadContentRefresh(pagename) {
@@ -277,4 +283,125 @@
var pageContentObject3 = YAHOO.util.Connect.asyncRequest('GET', 'keepalive.php', pageContentCallbackKeepalive);
//setTimeout( keepalive, 1000000 );
-}
\ No newline at end of file
+}
+
+
+
+var pass_minimum_length = 5;
+var pass_messages = new Array();
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_0_txt']?>";
+pass_message['color'] = "#d0d0d0";
+pass_messages[0] = pass_message;
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_1_txt']?>";
+pass_message['color'] = "red";
+pass_messages[1] = pass_message;
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_2_txt']?>";
+pass_message['color'] = "yellow";
+pass_messages[2] = pass_message;
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_3_txt']?>";
+pass_message['color'] = "#00ff00";
+pass_messages[3] = pass_message;
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_4_txt']?>";
+pass_message['color'] = "green";
+pass_messages[4] = pass_message;
+
+var pass_message = new Array();
+pass_message['text'] = "<?php echo $wb['password_strength_5_txt']?>";
+pass_message['color'] = "green";
+pass_messages[5] = pass_message;
+
+function pass_check(password) {
+ var length = password.length;
+ var points = 0;
+ if (length < pass_minimum_length) {
+ pass_result(0);
+ return;
+ }
+
+ if (length < 5) {
+ pass_result(1);
+ return;
+ }
+
+ if (pass_contains(password, "ABCDEFGHIJKLNMOPQRSTUVWXYZ")) {
+ points += 1;
+ }
+
+ if (pass_contains(password, "0123456789")) {
+ points += 1;
+ }
+
+ if (pass_contains(password, "`~!@#$%^&*()_+|\=-[]}{';:/?.>,<\" ")) {
+ points += 1;
+ }
+
+ if (points == 0) {
+ if (length >= 5 && length <=6) {
+ pass_result(1);
+ } else if (length >= 7 && length <=8) {
+ pass_result(2);
+ } else {
+ pass_result(3);
+ }
+ } else if (points == 1) {
+ if (length >= 5 && length <=6) {
+ pass_result(2);
+ } else if (length >= 7 && length <=10) {
+ pass_result(3);
+ } else {
+ pass_result(4);
+ }
+ } else if (points == 2) {
+ if (length >= 5 && length <=8) {
+ pass_result(3);
+ } else if (length >= 9 && length <=10) {
+ pass_result(4);
+ } else {
+ pass_result(5);
+ }
+ } else if (points == 3) {
+ if (length >= 5 && length <=6) {
+ pass_result(3);
+ } else if (length >= 7 && length <=8) {
+ pass_result(4);
+ } else {
+ pass_result(5);
+ }
+ } else if (points >= 4) {
+ if (length >= 5 && length <=6) {
+ pass_result(4);
+ } else {
+ pass_result(5);
+ }
+ }
+}
+
+
+
+function pass_result(points, message) {
+ if (points == 0) {
+ width = 10;
+ } else {
+ width = points*20;
+ }
+ document.getElementById("passBar").innerHTML = '<div style="float:left; height: 10px; padding:0px; background-color: ' + pass_messages[points]['color'] + '; width: ' + width + 'px;" />';
+ document.getElementById("passText").innerHTML = pass_messages[points]['text'];
+}
+function pass_contains(pass, check) {
+ for (i = 0; i < pass.length; i++) {
+ if (check.indexOf(pass.charAt(i)) > -1) {
+ return true;
+ }
+ }
+ return false;
+}
--
Gitblit v1.9.1