diff --git a/lib/NGCP/Panel/Form/Subscriber.pm b/lib/NGCP/Panel/Form/Subscriber.pm index 11f64bb319..45c9ab2677 100644 --- a/lib/NGCP/Panel/Form/Subscriber.pm +++ b/lib/NGCP/Panel/Form/Subscriber.pm @@ -51,7 +51,6 @@ has_field 'webpassword' => ( type => 'Text', label => 'Web Password', required => 0, - minlength => 6, element_attr => { rel => ['tooltip'], title => ['The password to log into the CSC Panel.'] @@ -96,7 +95,6 @@ has_field 'password' => ( type => 'Text', label => 'SIP Password', required => 1, - minlength => 6, element_attr => { rel => ['tooltip'], title => ['The password to authenticate for SIP and XMPP services.'] diff --git a/lib/NGCP/Panel/Utils/Form.pm b/lib/NGCP/Panel/Utils/Form.pm index 1405da1503..ec5a273cbf 100644 --- a/lib/NGCP/Panel/Utils/Form.pm +++ b/lib/NGCP/Panel/Utils/Form.pm @@ -9,11 +9,14 @@ sub validate_password { my $r = $c->config->{security}; my $pass = $field->value; - if($r->{password_min_length} && length($pass) < $r->{password_min_length}) { - $field->add_error($c->loc('Must be at minimum ' . $r->{password_min_length} . ' characters long')); + my $minlen = $r->{password_min_length} // 6; + my $maxlen = $r->{password_max_length} // 40; + + if(length($pass) < $minlen) { + $field->add_error($c->loc('Must be at minimum [_1] characters long', $minlen)); } - if($r->{password_max_length} && length($pass) > $r->{password_max_length}) { - $field->add_error($c->loc('Must be at maximum ' . $r->{password_max_length} . ' characters long')); + if(length($pass) > $maxlen) { + $field->add_error($c->loc('Must be at maximum [_1] characters long', $maxlen)); } if($r->{password_musthave_lowercase} && $pass !~ /[a-z]/) { $field->add_error($c->loc('Must contain lower-case characters'));