Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Register
Sign in
Toggle navigation
Menu
Open sidebar
Zvonimir
ISPConfig 3
Commits
7f814307
Commit
7f814307
authored
May 08, 2014
by
Falko Timme
Browse files
Merge branch 'stable-3.0.5' of git.ispconfig.org:ispconfig/ispconfig3 into stable-3.0.5
parents
b79d240e
c9e684d9
Changes
2
Hide whitespace changes
Inline
Side-by-side
interface/lib/classes/validate_password.inc.php
View file @
7f814307
...
...
@@ -38,19 +38,27 @@ class validate_password {
return
1
;
}
$different
=
0
;
if
(
preg_match
(
'/[abcdefghijklnmopqrstuvwxyz]/'
,
$password
))
{
$different
+=
1
;
}
if
(
preg_match
(
'/[ABCDEFGHIJKLNMOPQRSTUVWXYZ]/'
,
$password
))
{
$points
+=
1
;
$different
+=
1
;
}
if
(
preg_match
(
'/[0123456789]/'
,
$password
))
{
$points
+=
1
;
$different
+=
1
;
}
if
(
preg_match
(
'/[`~!@#$%^&*()_+|\\=-[]}{\';:\/?.>,<" ]/'
,
$password
))
{
$points
+=
1
;
$different
+=
1
;
}
if
(
$points
==
0
)
{
if
(
$points
==
0
||
$different
<
3
)
{
if
(
$length
>=
5
&&
$length
<=
6
)
{
return
1
;
}
else
if
(
$length
>=
7
&&
$length
<=
8
)
{
...
...
interface/web/js/scrigo.js.php
View file @
7f814307
...
...
@@ -579,6 +579,8 @@ pass_message['text'] = "<?php echo $wb['password_strength_5_txt']?>";
pass_message
['
color
'
] =
"green"
;
pass_messages[5] =
pass_message;
var
special_chars =
"`~!@#$%^&*()_+|\=-[]}{';:/?.>,<\"
";
function
pass_check
(
password
)
{
var
length =
password.length;
var
points =
0;
...
...
@@ -591,20 +593,29 @@ function pass_check(password) {
pass_result
(1);
return
;
}
var
different =
0;
if
(
pass_contains
(
password
,
"
abcdefghijklnmopqrstuvwxyz
"))
{
different
+=
1;
}
if
(
pass_contains
(
password
,
"
ABCDEFGHIJKLNMOPQRSTUVWXYZ
"))
{
points
+=
1;
different
+=
1;
}
if
(
pass_contains
(
password
,
"0123456789"))
{
points
+=
1;
different
+=
1;
}
if
(
pass_contains
(
password
,
"`~!@
#
$%^&
*
()
_
+|\=
-
[]}{';
:
/?.
>
,
<
\"
"
))
{
if
(
pass_contains
(
password
,
special_chars
))
{
points
+=
1;
different
+=
1;
}
if
(points =
=
0)
{
if
(points =
=
0
||
different
<
3
)
{
if
(
length
>
= 5
&&
length
<
=6)
{
pass_result
(1);
}
else
if
(
length
>
= 7
&&
length
<
=8)
{
...
...
@@ -742,27 +753,45 @@ function getInternetExplorerVersion() {
return
rv
;
}
function
password
(
minLength
,
special
){
var
iteration =
0;
var
password =
""
;
var
randomNumber
;
function
password
(
minLength
,
special
,
num_special
){
minLength =
minLength
||
10;
if
(
minLength
<
8)
minLength =
8;
var
maxLength =
minLength
+
5;
var
length =
getRandomInt(minLength,
maxLength
);
if(special =
=
undefined
){
var
special =
false;
var
alphachars =
"abcdefghijklmnopqrstuvwxyz"
;
var
upperchars =
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
;
var
numchars =
"1234567890"
;
var
specialchars =
"!@#_"
;
if(num_special =
=
undefined
)
num_special =
0;
if
(
special
!=
undefined
&&
special =
=
true
)
{
num_special =
Math.floor(Math.random()
*
(
length
/
4))
+
1;
}
while
(
iteration
<
length
){
randomNumber =
(Math.floor((Math.random()
*
100))
%
94)
+
33;
if
(!
special
){
if
((
randomNumber
>
=33)
&&
(randomNumber
<
=47))
{
continue
;
}
if
((
randomNumber
>
=58)
&&
(randomNumber
<
=64))
{
continue
;
}
if
((
randomNumber
>
=91)
&&
(randomNumber
<
=96))
{
continue
;
}
if
((
randomNumber
>
=123)
&&
(randomNumber
<
=126))
{
continue
;
}
}
iteration
++;
password
+=
String.fromCharCode
(
randomNumber
);
var
numericlen =
getRandomInt(1,
2);
var
alphalen =
length
-
num_special
-
numericlen
;
var
upperlen =
Math.floor(alphalen
/
2);
alphalen =
alphalen
-
upperlen
;
var
password =
""
;
for(i =
0;
i
<
alphalen
;
i
++)
{
password
+=
alphachars.charAt
(
Math.floor
(
Math.random
()
*
alphachars.length
));
}
for(i =
0;
i
<
upperlen
;
i
++)
{
password
+=
upperchars.charAt
(
Math.floor
(
Math.random
()
*
upperchars.length
));
}
for(i =
0;
i
<
num_special
;
i
++)
{
password
+=
specialchars.charAt
(
Math.floor
(
Math.random
()
*
specialchars.length
));
}
for(i =
0;
i
<
numericlen
;
i
++)
{
password
+=
numchars.charAt
(
Math.floor
(
Math.random
()
*
numchars.length
));
}
password =
password.split('').sort(function()
{
return
0.5
-
Math.random
();
}).
join
('');
return
password
;
}
...
...
@@ -778,7 +807,7 @@ function generatePassword(passwordFieldID, repeatPasswordFieldID){
var
newPWField =
oldPWField.clone();
newPWField.attr
('
type
',
'
text
').
attr
('
id
',
'
tmp
'+
passwordFieldID
).
insertBefore
(
oldPWField
);
oldPWField.remove
();
var
pword =
password(
<?php
echo
$min_password_length
?>
,
false
);
var
pword =
password(
<?php
echo
$min_password_length
;
?>
,
false
,
1
);
jQuery
('
#
'+
repeatPasswordFieldID
).
val
(
pword
);
newPWField.attr
('
id
',
passwordFieldID
).
val
(
pword
).
trigger
('
keyup
');
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment