Bug 24545: Fix license statements
[koha.git] / Koha / Patron / Attributes.pm
1 package Koha::Patron::Attributes;
2
3 # This file is part of Koha.
4 #
5 # Koha is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # Koha is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with Koha; if not, see <http://www.gnu.org/licenses>.
17
18 use Modern::Perl;
19
20 use Koha::Patron::Attribute;
21
22 use base qw(Koha::Objects);
23
24 =head1 NAME
25
26 Koha::Patron::Attributes - Koha Patron Attributes Object set class
27
28 =head1 API
29
30 =head2 Class Methods
31
32 =cut
33
34 =head3 search
35
36 my $attributes-> Koha::Patron::Attributes->search( $params );
37
38 =cut
39
40 sub search {
41     my ( $self, $params, $attributes ) = @_;
42
43     my $branchcode = $params->{branchcode};
44     delete( $params->{branchcode} );
45
46     my $or =
47         $branchcode
48         ? {
49             '-or' => [
50                 'borrower_attribute_types_branches.b_branchcode' => undef,
51                 'borrower_attribute_types_branches.b_branchcode' => $branchcode,
52             ]
53         } : {};
54
55     my $join =
56         $branchcode
57         ? {
58             join => {
59                 'code' => 'borrower_attribute_types_branches'
60             },
61         } : {};
62     $attributes //= {};
63     return $self->SUPER::search( { %$params, %$or }, { %$attributes, %$join } );
64 }
65
66 =head3 _type
67
68 =cut
69
70 sub _type {
71     return 'BorrowerAttribute';
72 }
73
74 sub object_class {
75     return 'Koha::Patron::Attribute';
76 }
77
78 1;