Bug 14570: Make it possible to add multiple guarantors to a record
[koha.git] / Koha / Patron / Relationship.pm
1 package Koha::Patron::Relationship;
2
3 # This file is part of Koha.
4 #
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
8 # version.
9 #
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.
13 #
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.
17
18 use Modern::Perl;
19
20 use Carp;
21
22 use Koha::Database;
23
24 use base qw(Koha::Object);
25
26 =head1 NAME
27
28 Koha::Patron::Relationship - A class to represent relationships between patrons
29
30 Patrons in Koha may be guarantors or guarantees. This class models that relationship
31 and provides a way to access those relationships.
32
33 =head1 API
34
35 =head2 Class Methods
36
37 =cut
38
39 =head3 guarantor
40
41 Returns the Koha::Patron object for the guarantor, if there is one
42
43 =cut
44
45 sub guarantor {
46     my ( $self ) = @_;
47
48     return unless $self->guarantor_id;
49
50     return scalar Koha::Patrons->find( $self->guarantor_id );
51 }
52
53 =head3 guarantee
54
55 Returns the Koha::Patron object for the guarantee
56
57 =cut
58
59 sub guarantee {
60     my ( $self ) = @_;
61
62     return scalar Koha::Patrons->find( $self->guarantee_id );
63 }
64
65 =head3 type
66
67 =cut
68
69 sub _type {
70     return 'BorrowerRelationship';
71 }
72
73 1;