3 #package to handle Boolean values in the parameters table
4 # Note: This is just a utility module; it should not be instantiated.
7 # Copyright 2003 Katipo Communications
9 # This file is part of Koha.
11 # Koha is free software; you can redistribute it and/or modify it
12 # under the terms of the GNU General Public License as published by
13 # the Free Software Foundation; either version 3 of the License, or
14 # (at your option) any later version.
16 # Koha is distributed in the hope that it will be useful, but
17 # WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
21 # You should have received a copy of the GNU General Public License
22 # along with Koha; if not, see <http://www.gnu.org/licenses>.
28 use base
qw(Exporter);
30 our $VERSION = 3.07.00.049;
31 our @EXPORT_OK = qw( true_p);
35 C4::Boolean - Convenience function to handle boolean values
36 in the parameter table
44 In the parameter table, there are various Boolean values that
45 variously require a 0/1, no/yes, false/true, or off/on values.
46 This module aims to provide scripts a means to interpret these
47 Boolean values in a consistent way which makes common sense.
55 use constant INVALID_BOOLEAN_STRING_EXCEPTION
=>
56 q{The given value does not seem to be interpretable as a Boolean value};
59 '0' => 0, '1' => 1, # C
61 'nil' => 0, 't' => 1, # LISP
62 'false' => 0, 'true' => 1, # Pascal
63 'off' => 0, 'on' => 1,
64 'no' => 0, 'yes' => 1,
70 if ( C4::Boolean::true_p(C4::Context->preference("IndependentBranches")) ) {
74 Tries to interpret the passed string as a Boolean value. Returns
75 the value if the string can be interpreted as such; otherwise an
83 if (!defined $x || ref $x ) {
84 carp INVALID_BOOLEAN_STRING_EXCEPTION
;
89 if (defined $strings{$x}) {
92 carp INVALID_BOOLEAN_STRING_EXCEPTION
;
104 Koha Development Team <http://koha-community.org/>