Line 0
Link Here
|
|
|
1 |
package Koha::Serial::Serial; |
2 |
|
3 |
# Copyright KohaSuomi 2015 |
4 |
# |
5 |
# This file is part of Koha. |
6 |
# |
7 |
# Koha is free software; you can redistribute it and/or modify it under the |
8 |
# terms of the GNU General Public License as published by the Free Software |
9 |
# Foundation; either version 3 of the License, or (at your option) any later |
10 |
# version. |
11 |
# |
12 |
# Koha is distributed in the hope that it will be useful, but WITHOUT ANY |
13 |
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR |
14 |
# A PARTICULAR PURPOSE. See the GNU General Public License for more details. |
15 |
# |
16 |
# You should have received a copy of the GNU General Public License along |
17 |
# with Koha; if not, write to the Free Software Foundation, Inc., |
18 |
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
19 |
|
20 |
use Modern::Perl; |
21 |
|
22 |
use Carp; |
23 |
|
24 |
use Koha::Database; |
25 |
|
26 |
use base qw(Koha::Object); |
27 |
|
28 |
sub type { |
29 |
return 'Serial'; |
30 |
} |
31 |
|
32 |
sub item { |
33 |
my ($self, $item) = @_; |
34 |
|
35 |
if ($item) { |
36 |
$item = Koha::Items->cast($item); |
37 |
$self->{item} = $item; |
38 |
$self->set({item => $item->_result()->id}); |
39 |
$self->store(); |
40 |
} |
41 |
|
42 |
unless ($self->{item}) { |
43 |
my $item = $self->_result()->serialitems()->itemnumber(); #itemnumber actually returns the Item-resultset :) |
44 |
$self->{item} = Koha::Items->cast($item); |
45 |
} |
46 |
|
47 |
return $self->{item}; |
48 |
} |
49 |
|
50 |
sub subscription { |
51 |
my ($self, $subscription) = @_; |
52 |
|
53 |
if ($subscription) { |
54 |
$subscription = Koha::Serial::Subscriptions->cast($subscription); |
55 |
$self->{subscription} = $subscription; |
56 |
$self->set({subscription => $subscription->_result()->id}); |
57 |
$self->store(); |
58 |
} |
59 |
|
60 |
unless ($self->{subscription}) { |
61 |
my $subscription = $self->_result()->subscription(); |
62 |
$self->{subscription} = Koha::Serial::Subscriptions->cast($subscription); |
63 |
} |
64 |
|
65 |
return $self->{subscription}; |
66 |
} |
67 |
|
68 |
1; |