1 package Koha
::Exceptions
::Password
;
3 # This file is part of Koha.
5 # Koha is free software; you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation; either version 3 of the License, or (at your option) any later
10 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License along
15 # with Koha; if not, write to the Free Software Foundation, Inc.,
16 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 use Exception
::Class
(
22 'Koha::Exceptions::Password' => {
23 description
=> 'Something went wrong!',
25 'Koha::Exceptions::Password::Invalid' => {
26 isa
=> 'Koha::Exceptions::Password',
27 description
=> 'Invalid password'
29 'Koha::Exceptions::Password::TooShort' => {
30 isa
=> 'Koha::Exceptions::Password',
31 description
=> 'Password is too short',
32 fields
=> ['length','min_length']
34 'Koha::Exceptions::Password::TooWeak' => {
35 isa
=> 'Koha::Exceptions::Password',
36 description
=> 'Password is too weak'
38 'Koha::Exceptions::Password::WhitespaceCharacters' => {
39 isa
=> 'Koha::Exceptions::Password',
40 description
=> 'Password contains leading/trailing whitespace character(s)'
42 'Koha::Exceptions::Password::Plugin' => {
43 isa
=> 'Koha::Exceptions::Password',
44 description
=> 'The password was rejected by a plugin'
51 my $msg = $self->message;
54 if ( $self->isa('Koha::Exceptions::Password::TooShort') ) {
55 $msg = sprintf("Password length (%s) is shorter than required (%s)", $self->length, $self->min_length );
64 Koha::Exceptions::Password - Base class for password exceptions
68 =head2 Koha::Exceptions::Password
70 Generic password exception
72 =head2 Koha::Exceptions::Password::Invalid
74 The supplied password is invalid.
76 =head2 Koha::Exceptions::Password::TooShort
78 Password is too short.
80 =head2 Koha::Exceptions::Password::TooWeak
84 =head2 Koha::Exceptions::Password::WhitespaceCharacters
86 Password contains leading/trailing spaces, which is forbidden.
92 Overloaded method for exception stringifying.