X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=detail.pl;h=d39c1828a10655276e0943679a4c3ab6f62c6b84;hb=70adcdf9250312c0250f117be65fd06c9228322a;hp=fb81c10f4ab6099e480b7dc0d066857bd3c14c50;hpb=cec2db30eafee1f8b82cbc3ceca16e086d56878a;p=koha.git diff --git a/detail.pl b/detail.pl index fb81c10f4a..d39c1828a1 100755 --- a/detail.pl +++ b/detail.pl @@ -1,292 +1,97 @@ #!/usr/bin/perl -#script to display detailed information -#written 8/11/99 - +# 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 HTML::Template; use strict; -use C4::Search; +require Exporter; +use C4::Context; +use C4::Output; # contains gettemplate use CGI; -use C4::Output; - -my $input = new CGI; -my $type = $input->param('type'); -my $bib = $input->param('bib'); -my $title = $input->param('title'); -my @items = &ItemInfo(undef, $bib, $type); -my @temp = split('\t', $items[0]); -my $dat = &bibdata($bib); -my $count = @items; -my ($authorcount, $addauthor) = &addauthor($bib); -my $additional = $addauthor->[0]->{'author'}; -my $main; -my $secondary; -my $colour; - - -if ($type eq '') { - $type = 'opac'; -} # if - -# setup colours -if ($type eq 'opac') { - $main = '#99cccc'; - $secondary = '#efe5ef'; -} else { - $main = '#cccc99'; - $secondary = '#ffffcc'; -} # else -$colour = $secondary; - -for (my $i = 1; $i < $authorcount; $i++) { - $additional .= "|" . $addauthor->[$i]->{'author'}; -} # for - -print $input->header; -print startpage(); -print startmenu($type); - -if ($type ne 'opac'){ - print << "EOF"; - -EOF -} # if - -if ($type eq 'catmain'){ - print mkheadr(3,"Catalogue Maintenance"); -} # if - -if ($dat->{'author'} ne ''){ - print mkheadr(3,"$dat->{'title'} ($dat->{'author'}) $temp[4]"); -} else { - print mkheadr(3,"$dat->{'title'} $temp[4]"); -} # if +use C4::Search; +use C4::Auth; -print << "EOF"; - - - -EOF +my $query=new CGI; +my $type=$query->param('type'); +#(-e "opac") && ($type='opac'); +($type) || ($type='intra'); +my ($loggedinuser, $cookie, $sessionID) = checkauth($query, ($type eq 'opac') ? (1) : (0)); -if ($type ne 'opac') { - print << "EOF"; - - - - - -
-EOF -} else { - print << "EOF"; - -EOF -} # else +my $biblionumber=$query->param('bib'); +#my $type='intra'; # FIXME - There's already a $type in this scope -print << "EOF"; -BIBLIO RECORD -EOF -if ($type ne 'opac') { - print "$bib"; +# change back when ive fixed request.pl +my @items = ItemInfo(undef, $biblionumber, $type); +my $norequests = 1; +foreach my $itm (@items) { + $norequests = 0 unless $itm->{'notforloan'}; } -print << "EOF"; -
-EOF - -if ($type ne 'opac') { - print << "EOF"; -
- - - -
-EOF -} # if -print << "EOF"; -
- -EOF +my $dat=bibdata($biblionumber); +my ($authorcount, $addauthor)= &addauthor($biblionumber); +my ($webbiblioitemcount, @webbiblioitems) = &getwebbiblioitems($biblionumber); +my ($websitecount, @websites) = &getwebsites($biblionumber); -if ($type ne 'opac') { - print << "EOF"; -Subtitle: $dat->{'subtitle'}
-Author: $dat->{'author'}
-Additional Author: $additional
-Series Title: $dat->{'seriestitle'}
-Subject: $dat->{'subject'}
-Copyright: $dat->{'copyrightdate'}
-Notes: $dat->{'notes'}
-Unititle: $dat->{'unititle'}
-Analytical Author:
-Analytical Title:
-Serial: $dat->{'serial'}
-Total Number of Items: $count -

-EOF +$dat->{'count'}=@items; +$dat->{'norequests'} = $norequests; -} else { - if ($dat->{'subtitle'} ne ''){ - print "Subtitle: $dat->{'subtitle'}
"; - } # if - if ($dat->{'author'} ne ''){ - print "Author: $dat->{'author'}
"; - } # if - -# Additional Author:
- if ($dat->{'seriestitle'} ne '') { - print "Seriestitle: $dat->{'seriestitle'}
"; - } # if - if ($dat->{'subject'} ne '') { - print "Subject: $dat->{'subject'}
"; - } # if - if ($dat->{'copyrightdate'} ne '') { - print "Copyright: $dat->{'copyrightdate'}
"; - } # if - if ($dat->{'notes'} ne '') { - print "Notes: $dat->{'notes'}
"; - } # if - if ($dat->{'unititle'} ne '') { - print "Unititle: $dat->{'unititle'}
"; - } # if - -# Analytical Author:
-# Analytical Title:
- if ($dat->{'serial'} ne '0') { - print "Serial: Yes
"; - } # if - - print << "EOF"; -Total Number of Items: $count -

-EOF +$dat->{'additional'}=$addauthor->[0]->{'author'}; +for (my $i = 1; $i < $authorcount; $i++) { + $dat->{'additional'} .= "|" . $addauthor->[$i]->{'author'}; +} # for -} # if +my @results; -print << "EOF"; -

+$results[0]=$dat; - -EOF +my $resultsarray=\@results; +my $itemsarray=\@items; +my $webarray=\@webbiblioitems; +my $sitearray=\@websites; -print center(); -print mktablehdr; +my $startfrom=$query->param('startfrom'); +($startfrom) || ($startfrom=0); +my $template; if ($type eq 'opac') { - print mktablerow(6,$main,'Item Type','Class','Branch','Date Due','Last Seen'); - if ($dat->{'url'} ne '') { - $dat->{'url'} =~ s/^http:\/\///; - print mktablerow(6, $colour, 'Website', 'WEB', 'Online', 'Available', "{'url'}\">$dat->{'url'}"); - } # if + $template = gettemplate("catalogue/detail-opac.tmpl"); } else { - print mktablerow(7,$main,'Itemtype','Class','Location','Date Due','Last Seen','Barcode',"","/images/background-mem.gif"); - if ($dat->{'url'} ne '') { - $dat->{'url'} =~ s/^http:\/\///; - print mktablerow(7, $colour, 'WEB', '', 'Online', 'Available', "{'url'}\">$dat->{'url'}"); - } # if -} # else - -$colour = 'white'; -for (my $i = 0; $i < $count; $i ++) { - - my @results = split('\t', $items[$i]); - - if ($type ne 'opac') { - $results[1] = mklink("/cgi-bin/koha/moredetail.pl?item=$results[5]&bib=$bib&bi=$results[8]&type=$type",$results[1]); - } # if - - if ($results[2] eq '') { - $results[2] = 'Available'; - } # if - - if ($type eq 'catmain'){ - $results[10] = mklink("/cgi-bin/koha/maint/catmaintain.pl?type=fixitemtype&bi=$results[8]&item=$results[6]","Fix Itemtype"); - } # if - - if ($type ne 'opac'){ - if ($type eq 'catmain'){ - print mktablerow(8,$colour,$results[6],$results[4],$results[3],$results[2],$results[7],$results[1],$results[9],$results[10]); - } else { - print mktablerow(7,$colour,$results[6],$results[4],$results[3],$results[2],$results[7],$results[1],$results[9]); - } # else - } else { - $results[6] = ItemType($results[6]); - print mktablerow(6,$colour,$results[6],$results[4],$results[3],$results[2],$results[7],$results[9]); - } # else - - if ($colour eq $secondary) { - $colour = 'white'; - } else { - $colour = $secondary; - } # else - -} # for - -print mktableft(); -print "

"; -print mktablehdr(); - -if ($type ne 'opac') { - print << "EOF"; - -

HELP
-Update Biblio for all Items: Click on the Modify button [left] to amend the biblio. Any changes you make will update the record for all the items listed above.

-Updating the Biblio for only ONE or SOME Items: -EOF - - if ($type eq 'catmain') { - print << "EOF"; -If some of the items listed above need a different biblio, -you need to click on the wrong item, then shift the group it belongs to, to the correct biblio. -You will need to know the correct biblio number -

- -EOF - - } else { - print << "EOF"; -If some of the items listed above need a different biblio, or are on the wrong biblio, you must use the acquisitions process to fix this. You will need to "re-order" the items, and delete them from this biblio. -

- -EOF + $template=gettemplate("catalogue/detail.tmpl"); +} +my $count=1; - } # else -} # if +# now to get the items into a hash we can use and whack that thru -print mktableft(); -print endcenter(); -print << "EOF"; -
-

-EOF -if ($type ne 'opac') { - print << "EOF"; - - - - - - - -
Abstract
$dat->{'abstract'}
-EOF -} else { - if ($dat->{'abstract'} ne '') { - print << "EOF"; - - - - - - - -
Abstract
$dat->{'abstract'}
-EOF - } # if -} # else +$template->param(startfrom => $startfrom+1); +$template->param(endat => $startfrom+20); +$template->param(numrecords => $count); +my $nextstartfrom=($startfrom+20<$count-20) ? ($startfrom+20) : ($count-20); +my $prevstartfrom=($startfrom-20>0) ? ($startfrom-20) : (0); +$template->param(nextstartfrom => $nextstartfrom); +$template->param(prevstartfrom => $prevstartfrom); +$template->param(BIBLIO_RESULTS => $resultsarray); +$template->param(ITEM_RESULTS => $itemsarray); +$template->param(WEB_RESULTS => $webarray); +$template->param(SITE_RESULTS => $sitearray); +$template->param(loggedinuser => $loggedinuser); +print $query->header(-cookie => $cookie), $template->output; -print endmenu($type); -print endpage();