#!/usr/bin/perl
-use CGI;
+# Copyright 2000-2002 Katipo Communications
+#
+# 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 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., 59 Temple Place,
+# Suite 330, Boston, MA 02111-1307 USA
+
use strict;
-use C4::Acquisitions;
+use CGI;
+use C4::Auth;
+use C4::Catalogue;
+use C4::Biblio;
+use C4::Search;
+use C4::Output;
+use C4::Interface::CGI::Output;
+use HTML::Template;
-my $input = new CGI;
-my $isbn = $input->param('isbn');
-my $biblioitemnum;
+my $input = new CGI;
+my $isbn = $input->param('isbn');
+my $title = $input->param('title');
+my $offset = $input->param('offset');
+my $num = $input->param('num');
+my $showoffset = $offset + 1;
+my $total;
my $count;
my @results;
+my $marc_p = C4::Context->boolean_preference("marc");
-if (! $isbn) {
+if ( !$isbn && !$title ) {
print $input->redirect('addbooks.pl');
-} else {
+}
+else {
+ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+ {
+ template_name => "acqui.simple/isbnsearch.tmpl",
+ query => $input,
+ type => "intranet",
+ authnotrequired => 0,
+ flagsrequired => { catalogue => 1 },
+ debug => 1,
+ }
+ );
+
+ # fill with books in ACTIVE DB (biblio)
+ if ( !$offset ) {
+ $offset = 0;
+ $showoffset = 1;
+ }
+ if ( !$num ) { $num = 10 }
+ ( $count, @results ) = isbnsearch( $isbn, $title );
+
+ if ( $count < ( $offset + $num ) ) {
+ $total = $count;
+ }
+ else {
+ $total = $offset + $num;
+ } # else
+
+ my @loop_data = ();
+ my $toggle;
+ for ( my $i = $offset ; $i < $total ; $i++ ) {
+ if ( $i % 2 ) {
+ $toggle = "#ffffcc";
+ }
+ else {
+ $toggle = "white";
+ }
+ my %row_data; # get a fresh hash for the row data
+ $row_data{toggle} = $toggle;
+ $row_data{biblionumber} = $results[$i]->{'biblionumber'};
+ $row_data{title} = $results[$i]->{'title'};
+ $row_data{author} = $results[$i]->{'author'};
+ $row_data{copyrightdate} = $results[$i]->{'copyrightdate'};
+ $row_data{NOTMARC} = !$marc_p;
+ push ( @loop_data, \%row_data );
+ }
+ $template->param( startfrom => $offset + 1 );
+ ( $offset + $num <= $count )
+ ? ( $template->param( endat => $offset + $num ) )
+ : ( $template->param( endat => $count ) );
+ $template->param( numrecords => $count );
+ my $nextstartfrom = ( $offset + $num < $count ) ? ( $offset + $num ) : (-1);
+ my $prevstartfrom = ( $offset - $num >= 0 ) ? ( $offset - $num ) : (-1);
+ $template->param( nextstartfrom => $nextstartfrom );
+ my $displaynext = 1;
+ my $displayprev = 0;
+ ( $nextstartfrom == -1 ) ? ( $displaynext = 0 ) : ( $displaynext = 1 );
+ ( $prevstartfrom == -1 ) ? ( $displayprev = 0 ) : ( $displayprev = 1 );
+ $template->param( displaynext => $displaynext );
+ $template->param( displayprev => $displayprev );
+ my @numbers = ();
+ my $term;
+ my $value;
+
+ if ($isbn) {
+ $term = "isbn";
+ $value = $isbn;
+ }
+ else {
+ $term = "title";
+ $value = $title;
+ }
+ if ( $count > 10 ) {
+ for ( my $i = 1 ; $i < $count / 10 + 1 ; $i++ ) {
+ if ( $i < 16 ) {
+ my $highlight = 0;
+ ( $offset == ( $i - 1 ) * 10 ) && ( $highlight = 1 );
+ push @numbers,
+ {
+ number => $i,
+ highlight => $highlight,
+ term => $term,
+ value => $value,
+ startfrom => ( $i - 1 ) * 10
+ };
+ }
+ }
+ }
+
+ # fill with books in breeding farm
+ ( $count, @results ) = breedingsearch( $title, $isbn );
+ my @breeding_loop = ();
+ for ( my $i = 0 ; $i <= $#results ; $i++ ) {
+ my %row_data;
+ if ( $i % 2 ) {
+ $toggle = "#ffffcc";
+ }
+ else {
+ $toggle = "white";
+ }
+ $row_data{toggle} = $toggle;
+ $row_data{id} = $results[$i]->{'id'};
+ $row_data{isbn} = $results[$i]->{'isbn'};
+ $row_data{file} = $results[$i]->{'file'};
+ $row_data{title} = $results[$i]->{'title'};
+ $row_data{author} = $results[$i]->{'author'};
+ $row_data{NOTMARC}= !$marc_p;
+ push ( @breeding_loop, \%row_data );
+ }
- ($count, @results) = &isbnsearch($isbn);
- if (! $count) {
- print $input->redirect("addbooks.pl?error=notfound");
- } else {
- $biblioitemnum = $results[0]->{'biblioitemnumber'};
- print $input->redirect("additem.pl?biblioitemnum=$biblioitemnum");
+ $template->param(
+ isbn => $isbn,
+ title => $title,
+ showoffset => $showoffset,
+ total => $total,
+ offset => $offset,
+ loop => \@loop_data,
+ breeding_loop => \@breeding_loop,
+ numbers => \@numbers,
+ term => $term,
+ value => $value,
+ NOTMARC => !$marc_p
+ );
- } # else
-} # else
+ print $input->header(
+ -type => guesstype( $template->output ),
+ -cookie => $cookie
+ ),
+ $template->output;
+} # else