diff --git a/Koha/Biblio.pm b/Koha/Biblio.pm index 26dc83f2d4..f0d0ffc8b0 100644 --- a/Koha/Biblio.pm +++ b/Koha/Biblio.pm @@ -1264,6 +1264,22 @@ sub normalized_isbn { return C4::Koha::GetNormalizedISBN($self->biblioitem->isbn); } +=head3 public_read_list + +This method returns the list of publicly readable database fields for both API and UI output purposes + +=cut + +sub public_read_list { + return [ + 'biblionumber', 'frameworkcode', 'author', + 'title', 'medium', 'subtitle', + 'part_number', 'part_name', 'unititle', + 'notes', 'serial', 'seriestitle', + 'copyrightdate', 'abstract' + ]; +} + =head3 to_api my $json = $biblio->to_api; @@ -1278,7 +1294,7 @@ sub to_api { my ($self, $args) = @_; my $response = $self->SUPER::to_api( $args ); - my $biblioitem = $self->biblioitem->to_api; + my $biblioitem = $self->biblioitem->to_api( $args ); return { %$response, %$biblioitem }; } diff --git a/Koha/Biblioitem.pm b/Koha/Biblioitem.pm index eec0cdc637..9cc3a05ca2 100644 --- a/Koha/Biblioitem.pm +++ b/Koha/Biblioitem.pm @@ -30,6 +30,26 @@ Koha::Biblioitem - Koha Biblioitem Object class =head2 Class methods +=head3 public_read_list + +This method returns the list of publicly readable database fields for both API and UI output purposes + +=cut + +sub public_read_list { + return [ + 'volume', 'number', 'isbn', + 'issn', 'ean', 'publicationyear', + 'publishercode', 'volumedate', 'columedesc', + 'collectiontitle', 'collectionissn', 'collectionvolume', + 'editionstatement', 'editionresponsibility', 'pages', + 'place', 'lccn', 'url', + 'cn_source', 'cn_class', 'cn)item', + 'cn_suffix', 'cn_sort', 'agerestriction', + 'totalissues' + ]; +} + =head3 to_api_mapping This method returns the mapping for representing a Koha::Biblioitem object @@ -57,7 +77,6 @@ sub to_api_mapping { totalissues => 'serial_total_issues', volumedate => 'volume_date', volumedesc => 'volume_description', - }; }