Skip to content

Commit 0bcdcc2

Browse files
committed
fix: password policy validation
Signed-off-by: romanetar <roman_ag@hotmail.com>
1 parent b3f1772 commit 0bcdcc2

File tree

2 files changed

+14
-10
lines changed

2 files changed

+14
-10
lines changed

app/Providers/AppServiceProvider.php

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -102,27 +102,29 @@ public function boot()
102102
});
103103

104104
Validator::extend("password_policy", function($attribute, $value, $parameters, $validator){
105+
$min_length = Config::get("auth.password_min_length");
106+
$max_length = Config::get("auth.password_max_length");
107+
$warning = Config::get("auth.password_shape_warning");
108+
$pattern = Config::get("auth.password_shape_pattern");
109+
110+
$validator->addReplacer('password_policy', function($message, $attribute, $rule, $parameters) use ($validator, $min_length, $max_length, $warning) {
111+
return sprintf("The %s must be %s–%s characters, and %s", $attribute, $min_length, $max_length, $warning);
112+
});
113+
105114
$password = TextUtils::trim($value);
106115

107-
$min_length = Config::get("auth.password_min_length");
108116
if (strlen($password) < $min_length) {
109117
return false;
110118
}
111119

112-
$max_length = Config::get("auth.password_max_length");
113120
if (strlen($password) > $max_length) {
114121
return false;
115122
}
116-
$warning = Config::get("auth.password_shape_warning");
117-
$pattern = Config::get("auth.password_shape_pattern");
123+
118124
if (!preg_match("/$pattern/", $password)) {
119125
return false;
120126
}
121127

122-
$validator->addReplacer('password_policy', function($message, $attribute, $rule, $parameters) use ($validator, $min_length, $max_length, $warning) {
123-
return sprintf("The %s must be %s–%s characters, and %s", $attribute, $min_length, $max_length, $warning);
124-
});
125-
126128
return true;
127129
});
128130
}

public/assets/js/ajax.utils.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@ function ajaxError(jqXHR, textStatus, errorThrown){
55
if(HTTP_status == 412 ){
66
var msg = '';
77

8-
for(const error of response.errors) {
9-
msg +='* '+ error+'\n';
8+
for (const [key, value] of Object.entries(response.errors)) {
9+
msg += isNaN(key) ? `* ${key}: ` : "";
10+
msg += `${value}\n`;
1011
}
12+
1113
displayErrorMessage('Validation error', msg);
1214
return;
1315
}

0 commit comments

Comments
 (0)