Portuguese staff updates, whitespace fixed
[koha.git] / acqui / neworderbiblio.pl
index 0e56c7c..824b664 100755 (executable)
@@ -57,12 +57,11 @@ the basket number to know on which basket this script have to add a new order.
 use strict;
 use C4::Search;
 use CGI;
-use C4::Output;
 use C4::Bookseller;
 use C4::Biblio;
 
 use C4::Auth;
-use C4::Interface::CGI::Output;
+use C4::Output;
 use C4::Koha;
 
 my $input = new CGI;
@@ -70,14 +69,14 @@ my $input = new CGI;
 #getting all CGI params into a hash.
 my $params = $input->Vars;
 
-my $offset = $params->{'offset'} || 0;
-my $query = $params->{'q'};
-my $num = $params->{'num'};
-$num = 20 unless $num;
+my $page             = $params->{'page'} || 1;
+my $query            = $params->{'q'};
+my $results_per_page = $params->{'num'} || 20;
 
 my $booksellerid = $params->{'booksellerid'};
-my $basketno = $params->{'basketno'};
-my $sub      = $params->{'sub'};
+my $basketno     = $params->{'basketno'};
+my $sub          = $params->{'sub'};
+my $bookseller = GetBookSellerFromId($booksellerid);
 
 # getting the template
 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
@@ -91,19 +90,23 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 );
 
 # Searching the catalog.
-my ($error, $marcresults) = SimpleSearch($query);
+my ($error, $marcresults, $total_hits) = SimpleSearch($query, $results_per_page * ($page - 1), $results_per_page);
 
 if (defined $error) {
-    $template->param(query_error => $error);
     warn "error: ".$error;
+    $template->param(
+        query_error => $error,
+        basketno             => $basketno,
+        booksellerid     => $bookseller->{'id'},
+        name             => $bookseller->{'name'},
+    );
     output_html_with_http_headers $input, $cookie, $template->output;
     exit;
 }
 
-my $hits = scalar @$marcresults;
 my @results;
 
-for(my $i=0;$i<$hits;$i++) {
+foreach my $i ( 0 .. scalar @$marcresults ) {
     my %resultsloop;
     my $marcrecord = MARC::File::USMARC::decode($marcresults->[$i]);
     my $biblio = TransformMarcToKoha(C4::Context->dbh,$marcrecord,'');
@@ -111,25 +114,18 @@ for(my $i=0;$i<$hits;$i++) {
     #build the hash for the template.
     %resultsloop=%$biblio;
     $resultsloop{highlight}       = ($i % 2)?(1):(0);
-
+    $resultsloop{booksellerid} = $booksellerid;
     push @results, \%resultsloop;
 }
 
 $template->param(
-            basketno => $basketno,
-            booksellerid => $booksellerid,
-            resultsloop => \@results,
-            total => $hits,
-            query => $query,
-            virtualshelves => C4::Context->preference("virtualshelves"),
-            LibraryName => C4::Context->preference("LibraryName"),
-            OpacNav => C4::Context->preference("OpacNav"),
-            opaccredits => C4::Context->preference("opaccredits"),
-            AmazonContent => C4::Context->preference("AmazonContent"),
-            opacsmallimage => C4::Context->preference("opacsmallimage"),
-            opaclayoutstylesheet => C4::Context->preference("opaclayoutstylesheet"),
-            opaccolorstylesheet => C4::Context->preference("opaccolorstylesheet"),
-            "BiblioDefaultView".C4::Context->preference("IntranetBiblioDefaultView") => 1,
+    basketno             => $basketno,
+    booksellerid     => $bookseller->{'id'},
+    name             => $bookseller->{'name'},
+    resultsloop          => \@results,
+    total                => $total_hits,
+    query                => $query,
+    pagination_bar       => pagination_bar( "$ENV{'SCRIPT_NAME'}?q=$query&booksellerid=$booksellerid&", getnbpages( $total_hits, $results_per_page ), $page, 'page' ),
 );
 
 # BUILD THE TEMPLATE