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;
#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(
);
# 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 = MARCmarc2koha(C4::Context->dbh,$marcrecord,'');
+ my $biblio = TransformMarcToKoha(C4::Context->dbh,$marcrecord,'');
#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