[Koha-cvs] CVS: koha detail.pl,1.24,1.24.2.1 ISBDdetail.pl,1.4,1.4.2.1 MARCdetail.pl,1.25.2.1,1.25.2.2

Paul POULAIN tipaul at users.sourceforge.net
Thu Feb 3 16:25:32 CET 2005


Update of /cvsroot/koha/koha
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20652

Modified Files:
      Tag: rel_2_2
	detail.pl ISBDdetail.pl MARCdetail.pl 
Log Message:
show text instead of code for itemtypes, authorized values...

Index: detail.pl
===================================================================
RCS file: /cvsroot/koha/koha/detail.pl,v
retrieving revision 1.24
retrieving revision 1.24.2.1
diff -C2 -r1.24 -r1.24.2.1
*** detail.pl	8 Dec 2004 10:30:29 -0000	1.24
--- detail.pl	3 Feb 2005 15:25:28 -0000	1.24.2.1
***************
*** 1,70 ****
  #!/usr/bin/perl
- # NOTE: Use standard 8-space tabs for this file (indents are 4 spaces)
- 
- # 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::Interface::CGI::Output;
! use C4::Date;
  
  my $query=new CGI;
! my $type=$query->param('type');
! ($type) || ($type='intra');
  
  my $biblionumber=$query->param('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'};
! }
  
  
! 
! my $dat=bibdata($biblionumber);
! my ($authorcount, $addauthor)= &addauthor($biblionumber);
  my ($webbiblioitemcount, @webbiblioitems) = &getwebbiblioitems($biblionumber);
  my ($websitecount, @websites)             = &getwebsites($biblionumber);
! my ($subjectcount, $subjects) = &subject($biblionumber);
  
  $dat->{'count'}=@items;
- $dat->{'norequests'} = $norequests;
  
  $dat->{'additional'}=$addauthor->[0]->{'author'};
  for (my $i = 1; $i < $authorcount; $i++) {
! 	$dat->{'additional'} .= " ; " . $addauthor->[$i]->{'author'};
  } # for
  
! $dat->{'subjects'}=$subjects->[0]->{'subject'};
! for (my $i = 1; $i < $subjectcount; $i++) {
! 	$dat->{'subjects'} .= ", " . $subjects->[$i]->{'subject'};
! } # for
  
! my @results;
  
! $results[0]=$dat;
  
  my $resultsarray=\@results;
--- 1,64 ----
  #!/usr/bin/perl
  use strict;
  require Exporter;
  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 ($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');
! $template->param(biblionumber => $biblionumber);
  
  
! # change back when ive fixed request.pl
! 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->{'additional'}=$addauthor->[0]->{'author'};
  for (my $i = 1; $i < $authorcount; $i++) {
!         $dat->{'additional'} .= " ; " . $addauthor->[$i]->{'author'};
  } # for
  
! my $norequests = 1;
! foreach my $itm (@items) {
!     $norequests = 0 unless $itm->{'notforloan'};
!     $itm->{$itm->{'publictype'}} = 1;
! }
! 
! $template->param(norequests => $norequests);
  
!   ## get notes and subjects from MARC record
! my $marc = C4::Context->preference("marc");
! if ($marc eq "yes") {
! 	my $dbh = C4::Context->dbh;
! 	my $bibid = &MARCfind_MARCbibid_from_oldbiblionumber($dbh,$biblionumber);
! 	my $marcflavour = C4::Context->preference("marcflavour");
! 	my $marcnotesarray = &getMARCnotes($dbh,$bibid,$marcflavour);
! 	my $marcsubjctsarray = &getMARCsubjects($dbh,$bibid,$marcflavour);
  
! 	$template->param(MARCNOTES => $marcnotesarray);
! 	$template->param(MARCSUBJCTS => $marcsubjctsarray);
! }
! 
! my @results = ($dat,);
  
  my $resultsarray=\@results;
***************
*** 73,112 ****
  my $sitearray=\@websites;
  
! my $startfrom=$query->param('startfrom');
! ($startfrom) || ($startfrom=0);
! 
! my ($template, $loggedinuser, $cookie) = get_template_and_user({
! 	template_name   => ($type eq 'opac'? 'catalogue/detail-opac.tmpl':
! 					     'catalogue/detail.tmpl'),
! 	query           => $query,
! 	type            => "intranet",
! 	authnotrequired => ($type eq 'opac'),
! 	flagsrequired   => {catalogue => 1},
!     });
! 
! my $count=1;
! 
! # now to get the items into a hash we can use and whack that thru
! 
! 
! my $nextstartfrom=($startfrom+20<$count-20) ? ($startfrom+20) : ($count-20);
! my $prevstartfrom=($startfrom-20>0) ? ($startfrom-20) : (0);
! $template->param(startfrom => $startfrom+1,
! 						endat => $startfrom+20,
! 						numrecords => $count,
! 						nextstartfrom => $nextstartfrom,
! 						prevstartfrom => $prevstartfrom,
! 						BIBLIO_RESULTS => $resultsarray,
! 						ITEM_RESULTS => $itemsarray,
! 						WEB_RESULTS => $webarray,
! 						SITE_RESULTS => $sitearray,
! 						loggedinuser => $loggedinuser,
! 						biblionumber => $biblionumber,
! 						);
  
  output_html_with_http_headers $query, $cookie, $template->output;
- 
- 
- # Local Variables:
- # tab-width: 8
- # End:
--- 67,76 ----
  my $sitearray=\@websites;
  
! $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;

Index: ISBDdetail.pl
===================================================================
RCS file: /cvsroot/koha/koha/ISBDdetail.pl,v
retrieving revision 1.4
retrieving revision 1.4.2.1
diff -C2 -r1.4 -r1.4.2.1
*** ISBDdetail.pl	8 Dec 2004 10:30:29 -0000	1.4
--- ISBDdetail.pl	3 Feb 2005 15:25:29 -0000	1.4.2.1
***************
*** 100,104 ****
  					for my $i (0..$#subf) {
  						my $subfieldcode = $subf[$i][0];
! 						my $subfieldvalue = $subf[$i][1];
  						my $tagsubf = $tag.$subfieldcode;
  						$calculated =~ s/\{(.?.?.?)$tagsubf(.*?)\}/$1$subfieldvalue\{$1$tagsubf$2\}$2/g;
--- 100,104 ----
  					for my $i (0..$#subf) {
  						my $subfieldcode = $subf[$i][0];
! 						my $subfieldvalue = get_authorised_value_desc($tag, $subf[$i][0], $subf[$i][1], '', $dbh);;
  						my $tagsubf = $tag.$subfieldcode;
  						$calculated =~ s/\{(.?.?.?)$tagsubf(.*?)\}/$1$subfieldvalue\{$1$tagsubf$2\}$2/g;
***************
*** 131,132 ****
--- 131,157 ----
  output_html_with_http_headers $query, $cookie, $template->output;
  
+ sub get_authorised_value_desc ($$$$$) {
+    my($tag, $subfield, $value, $framework, $dbh) = @_;
+ 
+    #---- branch
+     if ($tagslib->{$tag}->{$subfield}->{'authorised_value'} eq "branches" ) {
+        return getbranchname($value);
+     }
+ 
+    #---- itemtypes
+    if ($tagslib->{$tag}->{$subfield}->{'authorised_value'} eq "itemtypes" ) {
+        return ItemType($value);
+     }
+ 
+    #---- "true" authorized value
+    my $category = $tagslib->{$tag}->{$subfield}->{'authorised_value'};
+ 
+    if ($category ne "") {
+        my $sth = $dbh->prepare("select lib from authorised_values where category = ? and authorised_value = ?");
+        $sth->execute($category, $value);
+        my $data = $sth->fetchrow_hashref;
+        return $data->{'lib'};
+    } else {
+        return $value; # if nothing is found return the original value
+    }
+ }

Index: MARCdetail.pl
===================================================================
RCS file: /cvsroot/koha/koha/MARCdetail.pl,v
retrieving revision 1.25.2.1
retrieving revision 1.25.2.2
diff -C2 -r1.25.2.1 -r1.25.2.2
*** MARCdetail.pl	11 Jan 2005 15:08:00 -0000	1.25.2.1
--- MARCdetail.pl	3 Feb 2005 15:25:29 -0000	1.25.2.2
***************
*** 122,126 ****
  						$subfield_data{authority}=$fields[$x_i]->subfield(9);
  					}
! 					$subfield_data{marc_value}=$subf[$i][1];
  				}
  				$subfield_data{marc_subfield}=$subf[$i][0];
--- 122,126 ----
  						$subfield_data{authority}=$fields[$x_i]->subfield(9);
  					}
! 					$subfield_data{marc_value}=get_authorised_value_desc($fields[$x_i]->tag(), $subf[$i][0], $subf[$i][1], '', $dbh);
  				}
  				$subfield_data{marc_subfield}=$subf[$i][0];
***************
*** 201,202 ****
--- 201,227 ----
  output_html_with_http_headers $query, $cookie, $template->output;
  
+ sub get_authorised_value_desc ($$$$$) {
+    my($tag, $subfield, $value, $framework, $dbh) = @_;
+ 
+    #---- branch
+     if ($tagslib->{$tag}->{$subfield}->{'authorised_value'} eq "branches" ) {
+        return getbranchname($value);
+     }
+ 
+    #---- itemtypes
+    if ($tagslib->{$tag}->{$subfield}->{'authorised_value'} eq "itemtypes" ) {
+        return ItemType($value);
+     }
+ 
+    #---- "true" authorized value
+    my $category = $tagslib->{$tag}->{$subfield}->{'authorised_value'};
+ 
+    if ($category ne "") {
+        my $sth = $dbh->prepare("select lib from authorised_values where category = ? and authorised_value = ?");
+        $sth->execute($category, $value);
+        my $data = $sth->fetchrow_hashref;
+        return $data->{'lib'};
+    } else {
+        return $value; # if nothing is found return the original value
+    }
+ }





More information about the Koha-cvs mailing list