Subversion Repositories ALCASAR

Rev

Rev 688 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 688 Rev 912
1
<?php
1
<?php
2
# change user password on Alcasar captive Portal
2
# change user password on Alcasar captive Portal
3
# Copyright (C) 2003, 2004 Mondru AB.
3
# Copyright (C) 2003, 2004 Mondru AB.
4
# Copyright (C) 2008-2009 ANGEL95 & REXY
4
# Copyright (C) 2008-2009 ANGEL95 & REXY
5
 
5
 
6
 
6
 
7
 
7
 
8
require('/etc/freeradius-web/config.php');
8
require('/etc/freeradius-web/config.php');
9
 
9
 
10
$current_page = $_SERVER['PHP_SELF'];
10
$current_page = $_SERVER['PHP_SELF'];
11
 
11
 
12
# Choice of language
12
# Choice of language
13
$Language = 'fr';
13
$Language = 'en';
14
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
14
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
15
  $Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
15
  $Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
16
  $Language = strtolower(substr(chop($Langue[0]),0,2)); }
16
  $Language = strtolower(substr(chop($Langue[0]),0,2)); }
17
if($Language == 'es'){
17
if($Language == 'es'){
18
$R_title = "User password change";
18
$R_title = "User password change";
19
$R_form_l1 = "User";
19
$R_form_l1 = "User";
20
$R_form_l2 = "Old password";
20
$R_form_l2 = "Old password";
21
$R_form_l3 = "New password";
21
$R_form_l3 = "New password";
22
$R_form_l4 = "New password (confirmation)";
22
$R_form_l4 = "New password (confirmation)";
23
$R_eval_pass = "Score :";
23
$R_eval_pass = "Score :";
24
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
24
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
25
$R_form_button_valid = "Modify";
25
$R_form_button_valid = "Modify";
26
$R_form_button_retour = "Cancel";
26
$R_form_button_retour = "Cancel";
27
$R_form_result1 = "Your password has been successfuly changed";
27
$R_form_result1 = "Your password has been successfuly changed";
28
$R_form_result2 = "Error when trying to change password";
28
$R_form_result2 = "Error when trying to change password";
29
$R_retour = "ALCASAR home page";}
29
$R_retour = "ALCASAR home page";}
30
if($Language == 'de'){
30
else if ($Language == 'pt'){
31
$R_title = "User password change";
31
$R_title = "Alteração de senha do usuário";
32
$R_form_l1 = "User";
32
$R_form_l1 = "Usuário";
33
$R_form_l2 = "Old password";
33
$R_form_l2 = "Senha antiga";
34
$R_form_l3 = "New password";
34
$R_form_l3 = "Nova senha";
35
$R_form_l4 = "New password (confirmation)";
35
$R_form_l4 = "Nova senha (confirmação)";
36
$R_eval_pass = "Score :";
36
$R_eval_pass = "Resultado:";
37
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
37
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
38
$R_form_button_valid = "Modify";
38
$R_form_button_valid = "Modificar";
39
$R_form_button_retour = "Cancel";
39
$R_form_button_retour = "Cancelar";
40
$R_form_result1 = "Your password has been successfuly changed";
40
$R_form_result1 = "Sua senha foi alterada com sucesso";
41
$R_form_result2 = "Error when trying to change password";
41
$R_form_result2 = "Erro ao tentar alterar a senha";
42
$R_retour = "ALCASAR home page";}
42
$R_retour = "Home page Alcasar";}
43
if($Language == 'nl'){
43
else if($Language == 'de'){
44
$R_title = "User password change";
44
$R_title = "User password change";
45
$R_form_l1 = "User";
45
$R_form_l1 = "User";
46
$R_form_l2 = "Old password";
46
$R_form_l2 = "Old password";
47
$R_form_l3 = "New password";
47
$R_form_l3 = "New password";
48
$R_form_l4 = "New password (confirmation)";
48
$R_form_l4 = "New password (confirmation)";
49
$R_eval_pass = "Score :";
49
$R_eval_pass = "Score :";
50
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
50
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
51
$R_form_button_valid = "Modify";
51
$R_form_button_valid = "Modify";
52
$R_form_button_retour = "Cancel";
52
$R_form_button_retour = "Cancel";
53
$R_form_result1 = "Your password has been successfuly changed";
53
$R_form_result1 = "Your password has been successfuly changed";
54
$R_form_result2 = "Error when trying to change password";
54
$R_form_result2 = "Error when trying to change password";
55
$R_retour = "ALCASAR home page";}
55
$R_retour = "ALCASAR home page";}
56
if($Language == 'en'){
56
else if($Language == 'nl'){
57
$R_title = "User password change";
57
$R_title = "User password change";
58
$R_form_l1 = "User";
58
$R_form_l1 = "User";
59
$R_form_l2 = "Old password";
59
$R_form_l2 = "Old password";
60
$R_form_l3 = "New password";
60
$R_form_l3 = "New password";
61
$R_form_l4 = "New password (confirmation)";
61
$R_form_l4 = "New password (confirmation)";
62
$R_eval_pass = "Score :";
62
$R_eval_pass = "Score :";
63
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
63
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
64
$R_form_button_valid = "Modify";
64
$R_form_button_valid = "Modify";
65
$R_form_button_retour = "Cancel";
65
$R_form_button_retour = "Cancel";
66
$R_form_result1 = "Your password has been successfuly changed";
66
$R_form_result1 = "Your password has been successfuly changed";
67
$R_form_result2 = "Error when trying to change password";
67
$R_form_result2 = "Error when trying to change password";
68
$R_retour = "ALCASAR home page";}
68
$R_retour = "ALCASAR home page";}
69
if($Language == 'fr'){
69
else if($Language == 'fr'){
70
$R_title = "Changement de mot de passe utilisateur";
70
$R_title = "Changement de mot de passe utilisateur";
71
$R_form_l1 = "Utilisateur :";
71
$R_form_l1 = "Utilisateur :";
72
$R_form_l2 = "Ancien mot de passe :";
72
$R_form_l2 = "Ancien mot de passe :";
73
$R_form_l3 = "Nouveau mot de passe :";
73
$R_form_l3 = "Nouveau mot de passe :";
74
$R_form_l4 = "Nouveau mot de passe (confirmation) :";
74
$R_form_l4 = "Nouveau mot de passe (confirmation) :";
75
$R_eval_pass = "";
75
$R_eval_pass = "";
76
$R_passwordmeter = "Propulsé par 'Shibbo Password Analyser'</a>";
76
$R_passwordmeter = "Propulsé par 'Shibbo Password Analyser'</a>";
77
$R_form_button_valid = "Modifier";
77
$R_form_button_valid = "Modifier";
78
$R_form_button_retour = "Annuler";
78
$R_form_button_retour = "Annuler";
79
$R_form_result1 = "Votre mot de passe a &eacute;t&eacute; modifi&eacute; avec succ&egrave;s";
79
$R_form_result1 = "Votre mot de passe a &eacute;t&eacute; modifi&eacute; avec succ&egrave;s";
80
$R_form_result2 = "Erreur de changement de mot de passe";
80
$R_form_result2 = "Erreur de changement de mot de passe";
81
$R_retour = "Retour &agrave; la page d'accueil ALCASAR";
81
$R_retour = "Retour &agrave; la page d'accueil ALCASAR";}
-
 
82
else {
-
 
83
$R_title = "User password change";
-
 
84
$R_form_l1 = "User";
-
 
85
$R_form_l2 = "Old password";
-
 
86
$R_form_l3 = "New password";
-
 
87
$R_form_l4 = "New password (confirmation)";
-
 
88
$R_eval_pass = "Score :";
-
 
89
$R_passwordmeter = "Powered by 'Shibbo Password Analyser'</a>";
-
 
90
$R_form_button_valid = "Modify";
-
 
91
$R_form_button_retour = "Cancel";
-
 
92
$R_form_result1 = "Your password has been successfuly changed";
-
 
93
$R_form_result2 = "Error when trying to change password";
-
 
94
$R_retour = "ALCASAR home page";
82
}
95
}
83
echo "
96
echo "
84
<html>
97
<html>
85
	<head>
98
	<head>
86
		<title>$R_title</title>
99
		<title>$R_title</title>
87
		<meta http-equiv=\"Cache-control\" content=\"no-cache\">
100
		<meta http-equiv=\"Cache-control\" content=\"no-cache\">
88
		<meta http-equiv=\"Pragma\" content=\"no-cache\">
101
		<meta http-equiv=\"Pragma\" content=\"no-cache\">
89
		<link rel=\"stylesheet\" href=\"../css/pass.css\" type=\"text/css\">
102
		<link rel=\"stylesheet\" href=\"../css/pass.css\" type=\"text/css\">
90
		<link type=\"text/css\" href=\"../css/pwdmeter.css\" media=\"screen\" rel=\"stylesheet\" />
103
		<link type=\"text/css\" href=\"../css/pwdmeter.css\" media=\"screen\" rel=\"stylesheet\" />
91
		<!--[if lt IE 7]>
104
		<!--[if lt IE 7]>
92
			<link type=\"text/css\" href=\"../css/ie.css\" media=\"screen\" rel=\"stylesheet\" />
105
			<link type=\"text/css\" href=\"../css/ie.css\" media=\"screen\" rel=\"stylesheet\" />
93
		<![endif]-->
106
		<![endif]-->
94
		<script type=\"text/javascript\" src=\"js/pwdmeter.js\" language=\"javascript\"></script>	
107
		<script type=\"text/javascript\" src=\"js/pwdmeter.js\" language=\"javascript\"></script>	
95
	</head>
108
	</head>
96
	<body>
109
	<body>
97
		<div id=\"page\">
110
		<div id=\"page\">
98
			<div id=\"block_pass\">
111
			<div id=\"block_pass\">
99
				<div id=\"pass_chg\">	
112
				<div id=\"pass_chg\">	
100
					<img src=\"../images/organisme.png\" />
113
					<img src=\"../images/organisme.png\" />
101
					<h1 id=\"titre_pass\">$R_title</h1>
114
					<h1 id=\"titre_pass\">$R_title</h1>
102
				</div>
115
				</div>
103
				<div id=\"pass_chg_content\">
116
				<div id=\"pass_chg_content\">
104
					<form name=\"master\" action=\"$current_page\" method=\"post\">
117
					<form name=\"master\" action=\"$current_page\" method=\"post\">
105
					<input type=hidden name=action value=checkpass>
118
					<input type=hidden name=action value=checkpass>
106
						<table id=\"champs_pass\">
119
						<table id=\"champs_pass\">
107
							<tr>
120
							<tr>
108
								<td class=\"first_item\">$R_form_l1</td>
121
								<td class=\"first_item\">$R_form_l1</td>
109
								<td><input type=\"text\" name=\"login\" value=\"\" label=\"test\"></td>
122
								<td><input type=\"text\" name=\"login\" value=\"\" label=\"test\"></td>
110
							</tr>	
123
							</tr>	
111
							<tr>
124
							<tr>
112
								<td class=\"first_item\">$R_form_l2</td>
125
								<td class=\"first_item\">$R_form_l2</td>
113
								<td><input type=\"password\" name=\"passwd\" value=\"\"></td>
126
								<td><input type=\"password\" name=\"passwd\" value=\"\"></td>
114
							</tr>
127
							</tr>
115
							<tr>
128
							<tr>
116
								<td class=\"first_item\">$R_form_l3</td>
129
								<td class=\"first_item\">$R_form_l3</td>
117
								<td>
130
								<td>
118
									<input type=\"password\" name=\"newpasswd\" id=\"passwordPwd\" value=\"\" autocomplete=\"off\" onkeyup=\"chkPass(this.value);\" />
131
									<input type=\"password\" name=\"newpasswd\" id=\"passwordPwd\" value=\"\" autocomplete=\"off\" onkeyup=\"chkPass(this.value);\" />
119
									<input type=\"text\" id=\"passwordTxt\" name=\"passwordTxt\" autocomplete=\"off\" onkeyup=\"chkPass(this.value);\" class=\"hide\" />
132
									<input type=\"text\" id=\"passwordTxt\" name=\"passwordTxt\" autocomplete=\"off\" onkeyup=\"chkPass(this.value);\" class=\"hide\" />
120
								</td>
133
								</td>
121
							</tr>
134
							</tr>
122
							<tr>
135
							<tr>
123
								<td class=\"first_item\">$R_eval_pass</td>
136
								<td class=\"first_item\">$R_eval_pass</td>
124
								<td>
137
								<td>
125
									<div id=\"scorebarBorder\">
138
									<div id=\"scorebarBorder\">
126
										<div id=\"score\">0%</div>
139
										<div id=\"score\">0%</div>
127
										<div id=\"scorebar\">&nbsp;</div>
140
										<div id=\"scorebar\">&nbsp;</div>
128
									</div>
141
									</div>
129
									<div id=\"complexity\"></div>
142
									<div id=\"complexity\"></div>
130
								</td>
143
								</td>
131
							</tr>
144
							</tr>
132
							<tr>
145
							<tr>
133
								<td colspan=\"2\" id=\"lien_pass\">$R_passwordmeter</td>
146
								<td colspan=\"2\" id=\"lien_pass\">$R_passwordmeter</td>
134
							</tr>
147
							</tr>
135
							<tr>
148
							<tr>
136
								<td class=\"first_item\">$R_form_l4</td>
149
								<td class=\"first_item\">$R_form_l4</td>
137
								<td><input type=\"password\" name=\"newpasswd2\" value=\"\"></td>
150
								<td><input type=\"password\" name=\"newpasswd2\" value=\"\"></td>
138
							</tr>
151
							</tr>
139
						</table>
152
						</table>
140
					<input type=\"submit\" class=\"btn_form\" id=\"btn_pass\" value=\"$R_form_button_valid\">
153
					<input type=\"submit\" class=\"btn_form\" id=\"btn_pass\" value=\"$R_form_button_valid\">
141
					<input type=\"button\" class=\"btn_form\" id=\"btn_retour\" value=\"$R_form_button_retour\" onclick=\"location.replace('http://alcasar');\">
154
					<input type=\"button\" class=\"btn_form\" id=\"btn_retour\" value=\"$R_form_button_retour\" onclick=\"location.replace('http://alcasar');\">
142
				</div>
155
				</div>
143
			</div>
156
			</div>
144
			<div id=\"info_pass\">
157
			<div id=\"info_pass\">
145
						<table id=\"tablePwdStatus\" cellpadding=\"5\" cellspacing=\"1\" border=\"0\">
158
						<table id=\"tablePwdStatus\" cellpadding=\"5\" cellspacing=\"1\" border=\"0\">
146
					<tr>
159
					<tr>
147
						<th colspan=\"2\">Additions</th>
160
						<th colspan=\"2\">Additions</th>
148
						<th class=\"txtCenter\">Type</th>
161
						<th class=\"txtCenter\">Type</th>
149
						<th class=\"txtCenter\">Rate</th>
162
						<th class=\"txtCenter\">Rate</th>
150
						<th class=\"txtCenter\">Count</th>
163
						<th class=\"txtCenter\">Count</th>
151
						<th class=\"txtCenter\">Bonus</th>
164
						<th class=\"txtCenter\">Bonus</th>
152
					</tr>
165
					</tr>
153
					<tr>
166
					<tr>
154
						<td width=\"1%\"><div id=\"div_nLength\" class=\"fail\">&nbsp;</div></td>
167
						<td width=\"1%\"><div id=\"div_nLength\" class=\"fail\">&nbsp;</div></td>
155
						<td width=\"94%\">Number of Characters</td>
168
						<td width=\"94%\">Number of Characters</td>
156
						<td width=\"1%\" class=\"txtCenter\">Flat</td>
169
						<td width=\"1%\" class=\"txtCenter\">Flat</td>
157
						<td width=\"1%\" class=\"txtCenter italic\">+(n*4)</td>
170
						<td width=\"1%\" class=\"txtCenter italic\">+(n*4)</td>
158
						<td width=\"1%\"><div id=\"nLength\" class=\"box\">&nbsp;</div></td>
171
						<td width=\"1%\"><div id=\"nLength\" class=\"box\">&nbsp;</div></td>
159
						<td width=\"1%\"><div id=\"nLengthBonus\" class=\"boxPlus\">&nbsp;</div></td>
172
						<td width=\"1%\"><div id=\"nLengthBonus\" class=\"boxPlus\">&nbsp;</div></td>
160
					</tr>	
173
					</tr>	
161
					<tr>
174
					<tr>
162
						<td><div id=\"div_nAlphaUC\" class=\"fail\">&nbsp;</div></td>
175
						<td><div id=\"div_nAlphaUC\" class=\"fail\">&nbsp;</div></td>
163
						<td>Uppercase Letters</td>
176
						<td>Uppercase Letters</td>
164
						<td class=\"txtCenter\">Cond/Incr</td>
177
						<td class=\"txtCenter\">Cond/Incr</td>
165
						<td nowrap=\"nowrap\" class=\"txtCenter italic\">+((len-n)*2)</td>
178
						<td nowrap=\"nowrap\" class=\"txtCenter italic\">+((len-n)*2)</td>
166
					   <td><div id=\"nAlphaUC\" class=\"box\">&nbsp;</div></td>
179
					   <td><div id=\"nAlphaUC\" class=\"box\">&nbsp;</div></td>
167
						<td><div id=\"nAlphaUCBonus\" class=\"boxPlus\">&nbsp;</div></td>
180
						<td><div id=\"nAlphaUCBonus\" class=\"boxPlus\">&nbsp;</div></td>
168
					</tr>	
181
					</tr>	
169
					<tr>
182
					<tr>
170
						<td><div id=\"div_nAlphaLC\" class=\"fail\">&nbsp;</div></td>
183
						<td><div id=\"div_nAlphaLC\" class=\"fail\">&nbsp;</div></td>
171
						<td>Lowercase Letters</td>
184
						<td>Lowercase Letters</td>
172
						<td class=\"txtCenter\">Cond/Incr</td>
185
						<td class=\"txtCenter\">Cond/Incr</td>
173
						<td class=\"txtCenter italic\">+((len-n)*2)</td>
186
						<td class=\"txtCenter italic\">+((len-n)*2)</td>
174
						<td><div id=\"nAlphaLC\" class=\"box\">&nbsp;</div></td>
187
						<td><div id=\"nAlphaLC\" class=\"box\">&nbsp;</div></td>
175
						<td><div id=\"nAlphaLCBonus\" class=\"boxPlus\">&nbsp;</div></td>
188
						<td><div id=\"nAlphaLCBonus\" class=\"boxPlus\">&nbsp;</div></td>
176
					</tr>
189
					</tr>
177
					<tr>
190
					<tr>
178
						<td><div id=\"div_nNumber\" class=\"fail\">&nbsp;</div></td>
191
						<td><div id=\"div_nNumber\" class=\"fail\">&nbsp;</div></td>
179
						<td>Numbers</td>
192
						<td>Numbers</td>
180
						<td class=\"txtCenter\">Cond</td>
193
						<td class=\"txtCenter\">Cond</td>
181
						<td class=\"txtCenter italic\">+(n*4)</td>
194
						<td class=\"txtCenter italic\">+(n*4)</td>
182
						<td><div id=\"nNumber\" class=\"box\">&nbsp;</div></td>
195
						<td><div id=\"nNumber\" class=\"box\">&nbsp;</div></td>
183
						<td><div id=\"nNumberBonus\" class=\"boxPlus\">&nbsp;</div></td>
196
						<td><div id=\"nNumberBonus\" class=\"boxPlus\">&nbsp;</div></td>
184
				   </tr>
197
				   </tr>
185
					<tr>
198
					<tr>
186
						<td><div id=\"div_nSymbol\" class=\"fail\">&nbsp;</div></td>
199
						<td><div id=\"div_nSymbol\" class=\"fail\">&nbsp;</div></td>
187
						<td>Symbols</td>
200
						<td>Symbols</td>
188
						<td class=\"txtCenter\">Flat</td>
201
						<td class=\"txtCenter\">Flat</td>
189
						<td class=\"txtCenter italic\">+(n*6)</td>
202
						<td class=\"txtCenter italic\">+(n*6)</td>
190
						<td><div id=\"nSymbol\" class=\"box\">&nbsp;</div></td>
203
						<td><div id=\"nSymbol\" class=\"box\">&nbsp;</div></td>
191
						<td><div id=\"nSymbolBonus\" class=\"boxPlus\">&nbsp;</div></td>
204
						<td><div id=\"nSymbolBonus\" class=\"boxPlus\">&nbsp;</div></td>
192
				   </tr>
205
				   </tr>
193
					<tr>
206
					<tr>
194
						<td><div id=\"div_nMidChar\" class=\"fail\">&nbsp;</div></td>
207
						<td><div id=\"div_nMidChar\" class=\"fail\">&nbsp;</div></td>
195
						<td>Middle Numbers or Symbols</td>
208
						<td>Middle Numbers or Symbols</td>
196
						<td class=\"txtCenter\">Flat</td>
209
						<td class=\"txtCenter\">Flat</td>
197
						<td class=\"txtCenter italic\">+(n*2)</td>
210
						<td class=\"txtCenter italic\">+(n*2)</td>
198
						<td><div id=\"nMidChar\" class=\"box\">&nbsp;</div></td>
211
						<td><div id=\"nMidChar\" class=\"box\">&nbsp;</div></td>
199
						<td><div id=\"nMidCharBonus\" class=\"boxPlus\">&nbsp;</div></td>
212
						<td><div id=\"nMidCharBonus\" class=\"boxPlus\">&nbsp;</div></td>
200
				   </tr>
213
				   </tr>
201
					<tr>
214
					<tr>
202
						<td><div id=\"div_nRequirements\" class=\"fail\">&nbsp;</div></td>
215
						<td><div id=\"div_nRequirements\" class=\"fail\">&nbsp;</div></td>
203
						<td>Requirements</td>
216
						<td>Requirements</td>
204
						<td class=\"txtCenter\">Flat</td>
217
						<td class=\"txtCenter\">Flat</td>
205
						<td class=\"txtCenter italic\">+(n*2)</td>
218
						<td class=\"txtCenter italic\">+(n*2)</td>
206
						<td><div id=\"nRequirements\" class=\"box\">&nbsp;</div></td>
219
						<td><div id=\"nRequirements\" class=\"box\">&nbsp;</div></td>
207
						<td><div id=\"nRequirementsBonus\" class=\"boxPlus\">&nbsp;</div></td>
220
						<td><div id=\"nRequirementsBonus\" class=\"boxPlus\">&nbsp;</div></td>
208
				   </tr>
221
				   </tr>
209
					<tr>
222
					<tr>
210
						<th colspan=\"6\">Deductions</th>
223
						<th colspan=\"6\">Deductions</th>
211
					</tr>
224
					</tr>
212
					<tr>
225
					<tr>
213
						<td width=\"1%\"><div id=\"div_nAlphasOnly\" class=\"pass\">&nbsp;</div></td>
226
						<td width=\"1%\"><div id=\"div_nAlphasOnly\" class=\"pass\">&nbsp;</div></td>
214
						<td width=\"94%\">Letters Only</td>
227
						<td width=\"94%\">Letters Only</td>
215
						<td width=\"1%\" class=\"txtCenter\">Flat</td>
228
						<td width=\"1%\" class=\"txtCenter\">Flat</td>
216
						<td width=\"1%\" class=\"txtCenter italic\">-n</td>
229
						<td width=\"1%\" class=\"txtCenter italic\">-n</td>
217
						<td width=\"1%\"><div id=\"nAlphasOnly\" class=\"box\">&nbsp;</div></td>
230
						<td width=\"1%\"><div id=\"nAlphasOnly\" class=\"box\">&nbsp;</div></td>
218
						<td width=\"1%\"><div id=\"nAlphasOnlyBonus\" class=\"boxMinus\">&nbsp;</div></td>
231
						<td width=\"1%\"><div id=\"nAlphasOnlyBonus\" class=\"boxMinus\">&nbsp;</div></td>
219
					</tr>	
232
					</tr>	
220
					<tr>
233
					<tr>
221
						<td><div id=\"div_nNumbersOnly\" class=\"pass\">&nbsp;</div></td>
234
						<td><div id=\"div_nNumbersOnly\" class=\"pass\">&nbsp;</div></td>
222
						<td>Numbers Only</td>
235
						<td>Numbers Only</td>
223
						<td class=\"txtCenter\">Flat</td>
236
						<td class=\"txtCenter\">Flat</td>
224
						<td class=\"txtCenter italic\">-n</td>
237
						<td class=\"txtCenter italic\">-n</td>
225
						<td><div id=\"nNumbersOnly\" class=\"box\">&nbsp;</div></td>
238
						<td><div id=\"nNumbersOnly\" class=\"box\">&nbsp;</div></td>
226
						<td><div id=\"nNumbersOnlyBonus\" class=\"boxMinus\">&nbsp;</div></td>
239
						<td><div id=\"nNumbersOnlyBonus\" class=\"boxMinus\">&nbsp;</div></td>
227
					</tr>	
240
					</tr>	
228
					<tr>
241
					<tr>
229
						<td><div id=\"div_nRepChar\" class=\"pass\">&nbsp;</div></td>
242
						<td><div id=\"div_nRepChar\" class=\"pass\">&nbsp;</div></td>
230
						<td>Repeat Characters (Case Insensitive)</td>
243
						<td>Repeat Characters (Case Insensitive)</td>
231
						<td class=\"txtCenter\">Comp</td>
244
						<td class=\"txtCenter\">Comp</td>
232
						<td nowrap=\"nowrap\" class=\"txtCenter italic\"> - </td>
245
						<td nowrap=\"nowrap\" class=\"txtCenter italic\"> - </td>
233
						<td><div id=\"nRepChar\" class=\"box\">&nbsp;</div></td>
246
						<td><div id=\"nRepChar\" class=\"box\">&nbsp;</div></td>
234
						<td><div id=\"nRepCharBonus\" class=\"boxMinus\">&nbsp;</div></td>
247
						<td><div id=\"nRepCharBonus\" class=\"boxMinus\">&nbsp;</div></td>
235
					</tr>	
248
					</tr>	
236
					<tr>
249
					<tr>
237
						<td><div id=\"div_nConsecAlphaUC\" class=\"pass\">&nbsp;</div></td>
250
						<td><div id=\"div_nConsecAlphaUC\" class=\"pass\">&nbsp;</div></td>
238
						<td>Consecutive Uppercase Letters</td>
251
						<td>Consecutive Uppercase Letters</td>
239
						<td class=\"txtCenter\">Flat</td>
252
						<td class=\"txtCenter\">Flat</td>
240
						<td class=\"txtCenter italic\">-(n*2)</td>
253
						<td class=\"txtCenter italic\">-(n*2)</td>
241
						<td><div id=\"nConsecAlphaUC\" class=\"box\">&nbsp;</div></td>
254
						<td><div id=\"nConsecAlphaUC\" class=\"box\">&nbsp;</div></td>
242
						<td><div id=\"nConsecAlphaUCBonus\" class=\"boxMinus\">&nbsp;</div></td>
255
						<td><div id=\"nConsecAlphaUCBonus\" class=\"boxMinus\">&nbsp;</div></td>
243
					</tr>	
256
					</tr>	
244
					<tr>
257
					<tr>
245
						<td><div id=\"div_nConsecAlphaLC\" class=\"pass\">&nbsp;</div></td>
258
						<td><div id=\"div_nConsecAlphaLC\" class=\"pass\">&nbsp;</div></td>
246
						<td>Consecutive Lowercase Letters</td>
259
						<td>Consecutive Lowercase Letters</td>
247
						<td class=\"txtCenter\">Flat</td>
260
						<td class=\"txtCenter\">Flat</td>
248
						<td class=\"txtCenter italic\">-(n*2)</td>
261
						<td class=\"txtCenter italic\">-(n*2)</td>
249
						<td><div id=\"nConsecAlphaLC\" class=\"box\">&nbsp;</div></td>
262
						<td><div id=\"nConsecAlphaLC\" class=\"box\">&nbsp;</div></td>
250
						<td><div id=\"nConsecAlphaLCBonus\" class=\"boxMinus\">&nbsp;</div></td>
263
						<td><div id=\"nConsecAlphaLCBonus\" class=\"boxMinus\">&nbsp;</div></td>
251
					</tr>	
264
					</tr>	
252
					<tr>
265
					<tr>
253
						<td><div id=\"div_nConsecNumber\" class=\"pass\">&nbsp;</div></td>
266
						<td><div id=\"div_nConsecNumber\" class=\"pass\">&nbsp;</div></td>
254
						<td>Consecutive Numbers</td>
267
						<td>Consecutive Numbers</td>
255
						<td class=\"txtCenter\">Flat</td>
268
						<td class=\"txtCenter\">Flat</td>
256
						<td class=\"txtCenter italic\">-(n*2)</td>
269
						<td class=\"txtCenter italic\">-(n*2)</td>
257
						<td><div id=\"nConsecNumber\" class=\"box\">&nbsp;</div></td>
270
						<td><div id=\"nConsecNumber\" class=\"box\">&nbsp;</div></td>
258
						<td><div id=\"nConsecNumberBonus\" class=\"boxMinus\">&nbsp;</div></td>
271
						<td><div id=\"nConsecNumberBonus\" class=\"boxMinus\">&nbsp;</div></td>
259
					</tr>	
272
					</tr>	
260
					<tr>
273
					<tr>
261
						<td><div id=\"div_nSeqAlpha\" class=\"pass\">&nbsp;</div></td>
274
						<td><div id=\"div_nSeqAlpha\" class=\"pass\">&nbsp;</div></td>
262
						<td>Sequential Letters (3+)</td>
275
						<td>Sequential Letters (3+)</td>
263
						<td class=\"txtCenter\">Flat</td>
276
						<td class=\"txtCenter\">Flat</td>
264
						<td class=\"txtCenter italic\">-(n*3)</td>
277
						<td class=\"txtCenter italic\">-(n*3)</td>
265
						<td><div id=\"nSeqAlpha\" class=\"box\">&nbsp;</div></td>
278
						<td><div id=\"nSeqAlpha\" class=\"box\">&nbsp;</div></td>
266
						<td><div id=\"nSeqAlphaBonus\" class=\"boxMinus\">&nbsp;</div></td>
279
						<td><div id=\"nSeqAlphaBonus\" class=\"boxMinus\">&nbsp;</div></td>
267
					</tr>	
280
					</tr>	
268
					<tr>
281
					<tr>
269
						<td><div id=\"div_nSeqNumber\" class=\"pass\">&nbsp;</div></td>
282
						<td><div id=\"div_nSeqNumber\" class=\"pass\">&nbsp;</div></td>
270
						<td>Sequential Numbers (3+)</td>
283
						<td>Sequential Numbers (3+)</td>
271
						<td class=\"txtCenter\">Flat</td>
284
						<td class=\"txtCenter\">Flat</td>
272
						<td class=\"txtCenter italic\">-(n*3)</td>
285
						<td class=\"txtCenter italic\">-(n*3)</td>
273
						<td><div id=\"nSeqNumber\" class=\"box\">&nbsp;</div></td>
286
						<td><div id=\"nSeqNumber\" class=\"box\">&nbsp;</div></td>
274
						<td><div id=\"nSeqNumberBonus\" class=\"boxMinus\">&nbsp;</div></td>
287
						<td><div id=\"nSeqNumberBonus\" class=\"boxMinus\">&nbsp;</div></td>
275
					</tr>	
288
					</tr>	
276
					<tr>
289
					<tr>
277
						<td><div id=\"div_nSeqSymbol\" class=\"pass\">&nbsp;</div></td>
290
						<td><div id=\"div_nSeqSymbol\" class=\"pass\">&nbsp;</div></td>
278
						<td>Sequential Symbols (3+)</td>
291
						<td>Sequential Symbols (3+)</td>
279
						<td class=\"txtCenter\">Flat</td>
292
						<td class=\"txtCenter\">Flat</td>
280
						<td class=\"txtCenter italic\">-(n*3)</td>
293
						<td class=\"txtCenter italic\">-(n*3)</td>
281
						<td><div id=\"nSeqSymbol\" class=\"box\">&nbsp;</div></td>
294
						<td><div id=\"nSeqSymbol\" class=\"box\">&nbsp;</div></td>
282
						<td><div id=\"nSeqSymbolBonus\" class=\"boxMinus\">&nbsp;</div></td>
295
						<td><div id=\"nSeqSymbolBonus\" class=\"boxMinus\">&nbsp;</div></td>
283
					</tr>	
296
					</tr>	
284
					<tr>
297
					<tr>
285
						<th colspan=\"6\">Legend</th>
298
						<th colspan=\"6\">Legend</th>
286
					</tr>
299
					</tr>
287
					<tr>
300
					<tr>
288
						<td colspan=\"6\">
301
						<td colspan=\"6\">
289
							<ul id=\"listLegend\">
302
							<ul id=\"listLegend\">
290
								<li><div class=\"exceed imgLegend\">&nbsp;</div> <span class=\"bold\">Exceptional:</span> Exceeds minimum standards. Additional bonuses are applied.</li>
303
								<li><div class=\"exceed imgLegend\">&nbsp;</div> <span class=\"bold\">Exceptional:</span> Exceeds minimum standards. Additional bonuses are applied.</li>
291
								<li><div class=\"pass imgLegend\">&nbsp;</div> <span class=\"bold\">Sufficient:</span> Meets minimum standards. Additional bonuses are applied.</li>
304
								<li><div class=\"pass imgLegend\">&nbsp;</div> <span class=\"bold\">Sufficient:</span> Meets minimum standards. Additional bonuses are applied.</li>
292
								<li><div class=\"warn imgLegend\">&nbsp;</div> <span class=\"bold\">Warning:</span> Advisory against employing bad practices. Overall score is reduced.</li>
305
								<li><div class=\"warn imgLegend\">&nbsp;</div> <span class=\"bold\">Warning:</span> Advisory against employing bad practices. Overall score is reduced.</li>
293
								<li><div class=\"fail imgLegend\">&nbsp;</div> <span class=\"bold\">Failure:</span> Does not meet the minimum standards. Overall score is reduced.</li>
306
								<li><div class=\"fail imgLegend\">&nbsp;</div> <span class=\"bold\">Failure:</span> Does not meet the minimum standards. Overall score is reduced.</li>
294
							</ul>
307
							</ul>
295
						</td>
308
						</td>
296
					</tr>
309
					</tr>
297
				</table>
310
				</table>
298
			   <table id=\"tablePwdNotes\" cellpadding=\"5\" cellspacing=\"1\" border=\"0\">
311
			   <table id=\"tablePwdNotes\" cellpadding=\"5\" cellspacing=\"1\" border=\"0\">
299
					<tr>
312
					<tr>
300
						<th>Quick Footnotes</th>
313
						<th>Quick Footnotes</th>
301
					</tr>
314
					</tr>
302
					<tr>
315
					<tr>
303
						<td>
316
						<td>
304
							&bull; <strong>Flat:</strong> Rates that add/remove in non-changing increments.<br />
317
							&bull; <strong>Flat:</strong> Rates that add/remove in non-changing increments.<br />
305
							&bull; <strong>Incr:</strong> Rates that add/remove in adjusting increments.<br />
318
							&bull; <strong>Incr:</strong> Rates that add/remove in adjusting increments.<br />
306
							&bull; <strong>Cond:</strong> Rates that add/remove depending on additional factors.<br />
319
							&bull; <strong>Cond:</strong> Rates that add/remove depending on additional factors.<br />
307
							&bull; <strong>Comp:</strong> Rates that are too complex to summarize. See source code for details.<br />
320
							&bull; <strong>Comp:</strong> Rates that are too complex to summarize. See source code for details.<br />
308
							&bull; <strong>n:</strong> Refers to the total number of occurrences.<br />
321
							&bull; <strong>n:</strong> Refers to the total number of occurrences.<br />
309
							&bull; <strong>len:</strong> Refers to the total password length.<br />
322
							&bull; <strong>len:</strong> Refers to the total password length.<br />
310
							&bull; Additional bonus scores are given for increased character variety.<br />
323
							&bull; Additional bonus scores are given for increased character variety.<br />
311
							&bull; Final score is a cumulative result of all bonuses minus deductions.<br />
324
							&bull; Final score is a cumulative result of all bonuses minus deductions.<br />
312
							&bull; Final score is capped with a minimum of 0 and a maximum of 100.<br />
325
							&bull; Final score is capped with a minimum of 0 and a maximum of 100.<br />
313
							&bull; Score and Complexity ratings are not conditional on meeting minimum requirements.<br />
326
							&bull; Score and Complexity ratings are not conditional on meeting minimum requirements.<br />
314
						</td>
327
						</td>
315
					</tr>
328
					</tr>
316
					<tr>
329
					<tr>
317
						<th>DISCLAIMER</th>
330
						<th>DISCLAIMER</th>
318
					</tr>
331
					</tr>
319
					<tr>
332
					<tr>
320
						<td>
333
						<td>
321
							<p>This application is designed to assess the strength of password strings.  The instantaneous visual feedback provides the user a means to improve the strength of their passwords, with a hard focus on breaking the typical bad habits of faulty password formulation.  Since no official weighting system exists, we created our own formulas to assess the overall strength of a given password.  Please note, that this application does not utilize the typical \"days-to-crack\" approach for strength determination.  We have found that particular system to be severely lacking and unreliable for real-world scenarios.  This application is neither perfect nor foolproof, and should only be utilized as a loose guide in determining methods for improving the password creation process. </p>
334
							<p>This application is designed to assess the strength of password strings.  The instantaneous visual feedback provides the user a means to improve the strength of their passwords, with a hard focus on breaking the typical bad habits of faulty password formulation.  Since no official weighting system exists, we created our own formulas to assess the overall strength of a given password.  Please note, that this application does not utilize the typical \"days-to-crack\" approach for strength determination.  We have found that particular system to be severely lacking and unreliable for real-world scenarios.  This application is neither perfect nor foolproof, and should only be utilized as a loose guide in determining methods for improving the password creation process. </p>
322
						</td>
335
						</td>
323
					</tr>
336
					</tr>
324
				</table>
337
				</table>
325
			</div>
338
			</div>
326
		</div>
339
		</div>
327
";
340
";
328
 
341
 
329
if (is_file("sql/drivers/$config[sql_type]/functions.php"))
342
if (is_file("sql/drivers/$config[sql_type]/functions.php"))
330
	include_once("sql/drivers/$config[sql_type]/functions.php");
343
	include_once("sql/drivers/$config[sql_type]/functions.php");
331
else{
344
else{
332
	echo "<b>Could not include SQL library</b><br>\n";
345
	echo "<b>Could not include SQL library</b><br>\n";
333
	exit();
346
	exit();
334
}
347
}
335
if (isset($action)){
348
if (isset($action)){
336
	if ($action == 'checkpass'){
349
	if ($action == 'checkpass'){
337
	$link = @da_sql_pconnect($config);
350
	$link = @da_sql_pconnect($config);
338
		if ($link){
351
		if ($link){
339
			$res = @da_sql_query($link,$config,
352
			$res = @da_sql_query($link,$config,
340
				"SELECT attribute,value FROM $config[sql_check_table] WHERE username = '$login'
353
				"SELECT attribute,value FROM $config[sql_check_table] WHERE username = '$login'
341
				AND attribute = '$config[sql_password_attribute]';");
354
				AND attribute = '$config[sql_password_attribute]';");
342
			if ($res){
355
			if ($res){
343
				$row = @da_sql_fetch_array($res,$config);
356
				$row = @da_sql_fetch_array($res,$config);
344
				if (is_file("crypt/$config[general_encryption_method].php")){
357
				if (is_file("crypt/$config[general_encryption_method].php")){
345
					include("crypt/$config[general_encryption_method].php");
358
					include("crypt/$config[general_encryption_method].php");
346
					$enc_passwd = $row['value'];
359
					$enc_passwd = $row['value'];
347
					$passwd = da_encrypt($passwd,$enc_passwd);
360
					$passwd = da_encrypt($passwd,$enc_passwd);
348
					$newpasswd = da_encrypt($newpasswd,$enc_passwd);
361
					$newpasswd = da_encrypt($newpasswd,$enc_passwd);
349
					$newpasswd2 = da_encrypt($newpasswd2,$enc_passwd);
362
					$newpasswd2 = da_encrypt($newpasswd2,$enc_passwd);
350
					if (($passwd == $enc_passwd) and ($newpasswd == $newpasswd2)){
363
					if (($passwd == $enc_passwd) and ($newpasswd == $newpasswd2)){
351
						$msg = '<font color=blue><b>'.$R_form_result1.'</b></font>';
364
						$msg = '<font color=blue><b>'.$R_form_result1.'</b></font>';
352
						$res2 = @da_sql_query($link,$config,
365
						$res2 = @da_sql_query($link,$config,
353
							"UPDATE $config[sql_check_table] set value='$newpasswd' WHERE username = '$login'
366
							"UPDATE $config[sql_check_table] set value='$newpasswd' WHERE username = '$login'
354
							AND attribute = '$config[sql_password_attribute]';");}
367
							AND attribute = '$config[sql_password_attribute]';");}
355
					else
368
					else
356
						$msg = '<font color=red><b>'.$R_form_result2.'</b></font>';
369
						$msg = '<font color=red><b>'.$R_form_result2.'</b></font>';
357
				}
370
				}
358
				else
371
				else
359
					echo "<b>Could not open encryption library file</b><br>\n";
372
					echo "<b>Could not open encryption library file</b><br>\n";
360
			}
373
			}
361
		}
374
		}
362
		echo "<span align=center>$msg</span>\n";
375
		echo "<span align=center>$msg</span>\n";
363
	}
376
	}
364
}
377
}
365
?>
378
?>
366
</body>
379
</body>
367
</html>
380
</html>
368
 
381