was a test for inverted indexes. Useless we have choosen zebra
[koha.git] / detail.pl
index b4d48f4..4e2a8d1 100755 (executable)
--- a/detail.pl
+++ b/detail.pl
@@ -1,97 +1,75 @@
 #!/usr/bin/perl
-
-# 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;
 require Exporter;
-use C4::Context;
-use C4::Output;  # contains gettemplate
 use CGI;
 use C4::Search;
 use C4::Auth;
+use C4::Bull; #uses getsubscriptionfrom biblionumber
+use C4::Interface::CGI::Output;
+use HTML::Template;
+use C4::Biblio;
+use C4::SearchMarc;
 
 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));
+my ($template, $borrowernumber, $cookie) 
+    = get_template_and_user({template_name => "catalogue/detail.tmpl",
+                            query => $query,
+                            type => "intranet",
+                            authnotrequired => 1,
+                            flagsrequired => {borrow => 1},
+                            });
 
-my $biblionumber=$query->param('bib');
-my $type='intra';      # FIXME - There's already a $type in this scope
+my $biblionumber=$query->param('biblionumber');
+$template->param(biblionumber => $biblionumber);
 
 
 # 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'};
-}
-
-
-
-my $dat=bibdata($biblionumber);
-my ($authorcount, $addauthor)= &addauthor($biblionumber);
+my @items                                 = &ItemInfo(undef, $biblionumber, 'intra');
+my $dat                                   = &bibdata($biblionumber);
+my ($authorcount, $addauthor)             = &addauthor($biblionumber);
 my ($webbiblioitemcount, @webbiblioitems) = &getwebbiblioitems($biblionumber);
 my ($websitecount, @websites)             = &getwebsites($biblionumber);
+my $subscriptionsnumber = getsubscriptionfrombiblionumber($biblionumber);
 
 $dat->{'count'}=@items;
-$dat->{'norequests'} = $norequests;
 
 $dat->{'additional'}=$addauthor->[0]->{'author'};
 for (my $i = 1; $i < $authorcount; $i++) {
-        $dat->{'additional'} .= "|" . $addauthor->[$i]->{'author'};
+        $dat->{'additional'} .= " ; " . $addauthor->[$i]->{'author'};
 } # for
 
-my @results;
-
-$results[0]=$dat;
+my $norequests = 1;
+foreach my $itm (@items) {
+    $norequests = 0 unless $itm->{'notforloan'};
+    $itm->{$itm->{'publictype'}} = 1;
+}
 
-my $resultsarray=\@results;
-my $itemsarray=\@items;
-my $webarray=\@webbiblioitems;
-my $sitearray=\@websites;
+$template->param(norequests => $norequests);
 
-my $startfrom=$query->param('startfrom');
-($startfrom) || ($startfrom=0);
+  ## get notes and subjects from MARC record
+my $marc = C4::Context->preference("marc");
+if ($marc eq "yes") {
+       my $dbh = C4::Context->dbh;
+       my $marcflavour = C4::Context->preference("marcflavour");
+       my $marcnotesarray = &getMARCnotes($dbh,$biblionumber,$marcflavour);
+       my $marcsubjctsarray = &getMARCsubjects($dbh,$biblionumber,$marcflavour);
 
-my $template;
-if ($type eq 'opac') {
-       $template = gettemplate("catalogue/detail-opac.tmpl");
-} else {
-       $template=gettemplate("catalogue/detail.tmpl");
+       $template->param(MARCNOTES => $marcnotesarray);
+       $template->param(MARCSUBJCTS => $marcsubjctsarray);
 }
-my $count=1;
 
-# now to get the items into a hash we can use and whack that thru
+my @results = ($dat,);
 
+my $resultsarray=\@results;
+my $itemsarray=\@items;
+my $webarray=\@webbiblioitems;
+my $sitearray=\@websites;
 
-$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;
+$template->param(BIBLIO_RESULTS => $resultsarray,
+                               ITEM_RESULTS => $itemsarray,
+                               WEB_RESULTS => $webarray,
+                               SITE_RESULTS => $sitearray,
+                               subscriptionsnumber => $subscriptionsnumber,
+);
 
+output_html_with_http_headers $query, $cookie, $template->output;