Bug 35800: Remove item.can.be.edited check
[koha.git] / Koha / Biblioitem.pm
1 package Koha::Biblioitem;
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
21 use Koha::Database;
22
23 use base qw(Koha::Object);
24
25 =head1 NAME
26
27 Koha::Biblioitem - Koha Biblioitem Object class
28
29 =head1 API
30
31 =head2 Class methods
32
33 =head3 public_read_list
34
35 This method returns the list of publicly readable database fields for both API and UI output purposes
36
37 =cut
38
39 sub public_read_list {
40     return [
41         'volume',           'number',                'isbn',
42         'issn',             'ean',                   'publicationyear',
43         'publishercode',    'volumedate',            'columedesc',
44         'collectiontitle',  'collectionissn',        'collectionvolume',
45         'editionstatement', 'editionresponsibility', 'pages',
46         'place',            'lccn',                  'url',
47         'cn_source',        'cn_class',              'cn)item',
48         'cn_suffix',        'cn_sort',               'agerestriction',
49         'totalissues'
50     ];
51 }
52
53 =head3 to_api_mapping
54
55 This method returns the mapping for representing a Koha::Biblioitem object
56 on the API.
57
58 =cut
59
60 sub to_api_mapping {
61     return {
62         agerestriction   => 'age_restriction',
63         biblionumber     => 'biblio_id',
64         biblioitemnumber => undef, # meaningless
65         collectionissn   => 'collection_issn',
66         collectiontitle  => 'collection_title',
67         collectionvolume => 'collection_volume',
68         editionresponsibility => undef, # obsolete, not mapped
69         editionstatement => 'edition_statement',
70         illus            => 'illustrations',
71         itemtype         => 'item_type',
72         lccn             => 'lc_control_number',
73         place            => 'publication_place',
74         publicationyear  => 'publication_year',
75         publishercode    => 'publisher',
76         size             => 'material_size',
77         totalissues      => 'serial_total_issues',
78         volumedate       => 'volume_date',
79         volumedesc       => 'volume_description',
80     };
81 }
82
83 =head2 Internal methods
84
85 =head3 _type
86
87 =cut
88
89 sub _type {
90     return 'Biblioitem';
91 }
92
93 1;