Bug 29605: DBRev 21.12.00.013
[koha-ffzg.git] / basket / basket.pl
index 83cb180..80a30ec 100755 (executable)
 use Modern::Perl;
 use CGI qw ( -utf8 );
 use C4::Koha;
-use C4::Biblio;
-use C4::Items;
-use C4::Auth;
-use C4::Output;
+use C4::Biblio qw(
+    GetMarcBiblio
+    GetMarcSeries
+    GetMarcSubjects
+    GetMarcUrls
+);
+use C4::Items qw( GetItemsInfo );
+use C4::Auth qw( get_template_and_user );
+use C4::Output qw( output_html_with_http_headers );
 
 use Koha::AuthorisedValues;
+use Koha::Biblios;
 use Koha::CsvProfiles;
 
-my $query = new CGI;
+my $query = CGI->new;
 
 my ( $template, $borrowernumber, $cookie ) = get_template_and_user (
     {
@@ -39,11 +45,9 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user (
 );
 
 my $bib_list     = $query->param('bib_list');
-my $print_basket = $query->param('print');
 my $verbose      = $query->param('verbose');
 
 if ($verbose)      { $template->param( verbose      => 1 ); }
-if ($print_basket) { $template->param( print_basket => 1 ); }
 
 my @bibs = split( /\//, $bib_list );
 my @results;
@@ -61,11 +65,11 @@ if (C4::Context->preference('TagsEnabled')) {
 foreach my $biblionumber ( @bibs ) {
     $template->param( biblionumber => $biblionumber );
 
-    my $dat              = &GetBiblioData($biblionumber);
-    next unless $dat;
-    my $record           = &GetMarcBiblio($biblionumber);
-    my $marcnotesarray   = GetMarcNotes( $record, $marcflavour );
-    my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
+    my $biblio           = Koha::Biblios->find( $biblionumber ) or next;
+    my $dat              = $biblio->unblessed;
+    my $record           = &GetMarcBiblio({ biblionumber => $biblionumber });
+    my $marcnotesarray   = $biblio->get_marc_notes({ marcflavour => $marcflavour });
+    my $marcauthorsarray = $biblio->get_marc_authors;
     my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
     my $marcseriesarray  = GetMarcSeries  ($record,$marcflavour);
     my $marcurlsarray    = GetMarcUrls    ($record,$marcflavour);
@@ -77,7 +81,7 @@ foreach my $biblionumber ( @bibs ) {
     }
        
     my $shelflocations =
-      { map { $_->authorised_value => $_->lib } Koha::AuthorisedValues->search_by_koha_field( { frameworkcode => $dat->{frameworkcode}, kohafield => 'items.location' } ) };
+      { map { $_->{authorised_value} => $_->{lib} } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => $dat->{frameworkcode}, kohafield => 'items.location' } ) };
 
        for my $itm (@items) {
            if ($itm->{'location'}){
@@ -122,7 +126,7 @@ my $resultsarray = \@results;
 
 $template->param(
     BIBLIO_RESULTS => $resultsarray,
-    csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ],
+    csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
     bib_list => $bib_list,
 );