validate the 0 as min value consecutive; meaning not take that rule into account
This commit is contained in:
parent
91a922a454
commit
2ba8506608
@ -174,7 +174,7 @@ if ($action == 'maj_pattern')
|
|||||||
$explodePattern = explode(';', $pattern);
|
$explodePattern = explode(';', $pattern);
|
||||||
|
|
||||||
$patternInError = false;
|
$patternInError = false;
|
||||||
if($explodePattern[0] < 1 || $explodePattern[4] < 1){
|
if($explodePattern[0] < 1){
|
||||||
$patternInError = true;
|
$patternInError = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -187,31 +187,32 @@ class modGeneratePassPerso extends ModeleGenPassword
|
|||||||
$spe = str_split($this->Spe);
|
$spe = str_split($this->Spe);
|
||||||
|
|
||||||
if (count(array_intersect($password_a, $maj)) < $this->NbMaj) {
|
if (count(array_intersect($password_a, $maj)) < $this->NbMaj) {
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count(array_intersect($password_a, $num)) < $this->NbNum) {
|
if (count(array_intersect($password_a, $num)) < $this->NbNum) {
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count(array_intersect($password_a, $spe)) < $this->NbSpe) {
|
if (count(array_intersect($password_a, $spe)) < $this->NbSpe) {
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$this->consecutiveInterationSameCharacter($password)) {
|
if (!$this->consecutiveInterationSameCharacter($password)) {
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* consecutive iterations of the same character
|
* check the consecutive iterations of the same character. Return false if the number doesn't match the maximum consecutive value allowed.
|
||||||
*
|
*
|
||||||
* @param string $password Password to check
|
* @param string $password Password to check
|
||||||
* @return int 0 if KO, >0 if OK
|
*
|
||||||
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public function consecutiveInterationSameCharacter($password)
|
private function consecutiveInterationSameCharacter($password)
|
||||||
{
|
{
|
||||||
$last = "";
|
$last = "";
|
||||||
$count = 0;
|
$count = 0;
|
||||||
@ -220,14 +221,16 @@ class modGeneratePassPerso extends ModeleGenPassword
|
|||||||
if($c != $last) {
|
if($c != $last) {
|
||||||
$last = $c;
|
$last = $c;
|
||||||
$count = 0;
|
$count = 0;
|
||||||
} else {
|
|
||||||
$count++;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($count >= $this->NbRepeat) {
|
$count++;
|
||||||
return 0;
|
if ($count > $this->NbRepeat) {
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 1;
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user