X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=basket%2Fdownloadcart.pl;h=806ad4959fe54c4e6dcbdbeba35be0debe6254bf;hb=73edf936ae9be2a704389896e5ad316eb8cf96ec;hp=392a3e4ef8bca76d03d5a04698785784fbb66de0;hpb=c2043933f7f9b30bf87a4c5656c50fd10584ef4f;p=koha-ffzg.git diff --git a/basket/downloadcart.pl b/basket/downloadcart.pl index 392a3e4ef8..806ad4959f 100755 --- a/basket/downloadcart.pl +++ b/basket/downloadcart.pl @@ -4,43 +4,41 @@ # # This file is part of Koha. # -# Koha is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. +# Koha is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. # -# Koha is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# Koha is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License along -# with Koha; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# You should have received a copy of the GNU General Public License +# along with Koha; if not, see . -use strict; -use warnings; +use Modern::Perl; -use CGI; -use Encode qw(encode); +use CGI qw ( -utf8 ); +use Encode qw( encode ); -use C4::Auth; -use C4::Biblio; -use C4::Items; -use C4::Output; -use C4::VirtualShelves; +use C4::Auth qw( get_template_and_user ); +use C4::Output qw( output_html_with_http_headers ); use C4::Record; -use C4::Ris; -use C4::Csv; +use C4::Ris qw( marc2ris ); + +use Koha::CsvProfiles; +use Koha::Biblios; + use utf8; -my $query = new CGI; +my $query = CGI->new; my ( $template, $borrowernumber, $cookie ) = get_template_and_user ( { - template_name => "basket/downloadcart.tmpl", + template_name => "basket/downloadcart.tt", query => $query, type => "intranet", - authnotrequired => 0, - flagsrequired => { borrow => 1 }, + flagsrequired => { catalogue => 1 }, } ); @@ -63,18 +61,22 @@ if ($bib_list && $format) { # Other formats } else { - foreach my $biblio (@bibs) { + foreach my $biblionumber (@bibs) { - my $record = GetMarcBiblio($biblio, 1); + my $biblio = Koha::Biblios->find($biblionumber); + my $record = $biblio->metadata->record({ embed_items => 1 }); + next unless $record; if ($format eq 'iso2709') { - $output .= $record->as_usmarc(); + #NOTE: If we don't explicitly UTF-8 encode the output, + #the browser will guess the encoding, and it won't always choose UTF-8. + $output .= encode("UTF-8", $record->as_usmarc()) // q{}; } elsif ($format eq 'ris') { $output .= marc2ris($record); } elsif ($format eq 'bibtex') { - $output .= marc2bibtex($record, $biblio); + $output .= marc2bibtex($record, $biblionumber); } } } @@ -89,7 +91,7 @@ if ($bib_list && $format) { print $output; } else { - $template->param(csv_profiles => GetCsvProfilesLoop()); + $template->param(csv_profiles => Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' })); $template->param(bib_list => $bib_list); output_html_with_http_headers $query, $cookie, $template->output; }