From 9f73cb07326d1d7f7f734910585ce8bfb46d6257 Mon Sep 17 00:00:00 2001 From: rangi Date: Sun, 4 May 2003 04:00:00 +0000 Subject: [PATCH] Continuing work on the nonmarc simple acq --- acqui.simple/isbnsearch.pl | 239 +++++++++++++++++++++---------------- 1 file changed, 133 insertions(+), 106 deletions(-) diff --git a/acqui.simple/isbnsearch.pl b/acqui.simple/isbnsearch.pl index 1d15cbd505..384d9711ab 100755 --- a/acqui.simple/isbnsearch.pl +++ b/acqui.simple/isbnsearch.pl @@ -1,6 +1,5 @@ #!/usr/bin/perl - # Copyright 2000-2002 Katipo Communications # # This file is part of Koha. @@ -30,117 +29,145 @@ use HTML::Template; my $input = new CGI; my $isbn = $input->param('isbn'); -my $title = $input->param('title'); +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; -if (! $isbn && !$title) { - print $input->redirect('addbooks.pl'); -} 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); +my $marc_p = C4::Context->boolean_preference("marc"); + +if ( !$isbn && !$title ) { + print $input->redirect('addbooks.pl'); +} +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 ); + } - 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'}; - 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'}; - push (@breeding_loop, \%row_data); - } - $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, - ); + $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 + ); - print $input->header( - -type => guesstype($template->output), - -cookie => $cookie - ),$template->output; -} # else + print $input->header( + -type => guesstype( $template->output ), + -cookie => $cookie + ), + $template->output; +} # else -- 2.39.5