[Koha-cvs] koha/acqui.simple addbiblio.pl additem.pl [rel_2_2]

paul poulain paul at koha-fr.org
Wed Jun 14 17:38:26 CEST 2006


CVSROOT:	/cvsroot/koha
Module name:	koha
Branch:		rel_2_2
Changes by:	paul poulain <tipaul>	06/06/14 15:38:26

Modified files:
	acqui.simple   : addbiblio.pl additem.pl 

Log message:
	oups... I forgot to commit this fix for first subfield declaration

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/acqui.simple/addbiblio.pl?cvsroot=koha&only_with_tag=rel_2_2&r1=1.52.2.44&r2=1.52.2.45
http://cvs.savannah.gnu.org/viewcvs/koha/acqui.simple/additem.pl?cvsroot=koha&only_with_tag=rel_2_2&r1=1.27.2.19&r2=1.27.2.20

Patches:
Index: addbiblio.pl
===================================================================
RCS file: /cvsroot/koha/koha/acqui.simple/Attic/addbiblio.pl,v
retrieving revision 1.52.2.44
retrieving revision 1.52.2.45
diff -u -b -r1.52.2.44 -r1.52.2.45
--- addbiblio.pl	12 Jun 2006 10:33:53 -0000	1.52.2.44
+++ addbiblio.pl	14 Jun 2006 15:38:26 -0000	1.52.2.45
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: addbiblio.pl,v 1.52.2.44 2006/06/12 10:33:53 tipaul Exp $
+# $Id: addbiblio.pl,v 1.52.2.45 2006/06/14 15:38:26 tipaul Exp $
 
 # Copyright 2000-2002 Katipo Communications
 #
@@ -218,7 +218,7 @@
 	$subfield_data{repeatable}=$tagslib->{$tag}->{$subfield}->{repeatable};
 	$subfield_data{kohafield}=$tagslib->{$tag}->{$subfield}->{kohafield};
 	$subfield_data{index} = $i;
-	$subfield_data{firstsubfield} = $firstsubfield;
+	$subfield_data{firstsubfield} = $firstsubfield?1:0;
 	$subfield_data{visibility} = "display:none" unless (($tagslib->{$tag}->{$subfield}->{hidden}%2==0) or $value ne ''); #check parity
 	# it's an authorised field
 	if ($tagslib->{$tag}->{$subfield}->{authorised_value}) {
@@ -306,7 +306,7 @@
 							my $value=$subfields[$subfieldcount][1];
 							next if (length $subfield !=1);
 							next if ($tagslib->{$tag}->{$subfield}->{tab} ne $tabloop);
-							push(@subfields_data, &create_input($tag,$subfield,$value,$i,$tabloop,$record,$authorised_values_sth),$#subfields_data>=0?0:1);
+							push(@subfields_data, &create_input($tag,$subfield,$value,$i,$tabloop,$record,$authorised_values_sth,$#subfields_data>=0?0:1));
 							$i++;
 						}
 					}
@@ -317,7 +317,7 @@
 						next if ($tag<10);
 						next if (($tagslib->{$tag}->{$subfield}->{hidden}<=-4) or ($tagslib->{$tag}->{$subfield}->{hidden}>=5) ); #check for visibility flag
 						next if (defined($field->subfield($subfield)));
-						push(@subfields_data, &create_input($tag,$subfield,'',$i,$tabloop,$record,$authorised_values_sth,$#subfields_data>0?0:1));
+						push(@subfields_data, &create_input($tag,$subfield,'',$i,$tabloop,$record,$authorised_values_sth,$#subfields_data>=0?0:1));
 						$i++;
 					}
 					if ($#subfields_data >= 0) {
@@ -382,6 +382,8 @@
         }
 # 		$template->param($tabloop."XX" =>\@loop_data);
 	}
+# 	use Data::Dumper;
+# 	warn "DUMP : ".Dumper(@BIG_LOOP);
 	$template->param(BIG_LOOP => \@BIG_LOOP);
 }
 
@@ -499,8 +501,8 @@
 	my @ind_tag = $input->param('ind_tag');
 	my @indicator = $input->param('indicator');
 	my @firstsubfields = $input->param('firstsubfield');
-	use Data::Dumper;
-	warn "DUMP PL : ".Dumper(@tags);
+# 	use Data::Dumper;
+# 	warn "DUMP PL : ".Dumper(@tags);
 	my $record;
 	if (C4::Context->preference('TemplateEncoding') eq "iso-8859-1") {
 		$record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,\@firstsubfields,\@indicator,\@ind_tag);
@@ -584,6 +586,7 @@
 		$bibid = "";
 		$oldbiblionumber= "";
 	}
+# 	warn "REC : ".$record->as_formatted;
 	build_tabs ($template, $record, $dbh,$encoding);
 	build_hidden_data;
 	$template->param(

Index: additem.pl
===================================================================
RCS file: /cvsroot/koha/koha/acqui.simple/Attic/additem.pl,v
retrieving revision 1.27.2.19
retrieving revision 1.27.2.20
diff -u -b -r1.27.2.19 -r1.27.2.20
--- additem.pl	26 Apr 2006 16:53:37 -0000	1.27.2.19
+++ additem.pl	14 Jun 2006 15:38:26 -0000	1.27.2.20
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: additem.pl,v 1.27.2.19 2006/04/26 16:53:37 tgarip1957 Exp $
+# $Id: additem.pl,v 1.27.2.20 2006/06/14 15:38:26 tipaul Exp $
 
 # Copyright 2000-2002 Katipo Communications
 #
@@ -75,12 +75,19 @@
 	# build indicator hash.
 	my @ind_tag = $input->param('ind_tag');
 	my @indicator = $input->param('indicator');
+	my @firstsubfields = $input->param('firstsubfields');
 	#my %indicators;
 	#for (my $i=0;$i<=$#ind_tag;$i++) {
 	#	$indicators{$ind_tag[$i]} = $indicator[$i];
 	#}
+	if (C4::Context->preference('TemplateEncoding') eq "iso-8859-1") {
+		$record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,\@firstsubfields,\@indicator,\@ind_tag);
+	} else {
 	my $xml = MARChtml2xml(\@tags,\@subfields,\@values,\@indicator,\@ind_tag);
-        my $record=MARC::Record::new_from_xml($xml, 'UTF-8');
+		$record=MARC::Record->new_from_xml($xml,C4::Context->preference('TemplateEncoding'),C4::Context->preference('marcflavour'));
+	}
+# 	my $xml = MARChtml2xml(\@tags,\@subfields,\@values,\@indicator,\@ind_tag);
+#         my $record=MARC::Record::new_from_xml($xml, 'UTF-8');
 	#my $record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,%indicators);
 	# if autoBarcode is ON, calculate barcode...
 	if (C4::Context->preference('autoBarcode')) {
@@ -140,13 +147,18 @@
 	# build indicator hash.
 	my @ind_tag = $input->param('ind_tag');
 	my @indicator = $input->param('indicator');
+	my @firstsubfields = $input->param('firstsubfields');
 #	my $itemnum = $input->param('itemnum');
 	#my %indicators;
 	#for (my $i=0;$i<=$#ind_tag;$i++) {
 	#	$indicators{$ind_tag[$i]} = $indicator[$i];
 	#}
+	if (C4::Context->preference('TemplateEncoding') eq "iso-8859-1") {
+		$record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,\@firstsubfields,\@indicator,\@ind_tag);
+	} else {
 	my $xml = MARChtml2xml(\@tags,\@subfields,\@values,\@indicator,\@ind_tag);
-        my $record=MARC::Record::new_from_xml($xml, 'UTF-8');
+		$record=MARC::Record->new_from_xml($xml,C4::Context->preference('TemplateEncoding'),C4::Context->preference('marcflavour'));
+	}
 	#my $record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,%indicators);
 # MARC::Record builded => now, record in DB
 # warn "R: ".$record->as_formatted;
@@ -188,7 +200,16 @@
 	for my $i (0..$#subf) {
 		next if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{tab}  ne 10 && ($field->tag() ne $itemtagfield && $subf[$i][0] ne $itemtagsubfield));
 		$witness{$subf[$i][0]} = $tagslib->{$field->tag()}->{$subf[$i][0]}->{lib} if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{tab}  eq 10);
-		$this_row{$subf[$i][0]} =$subf[$i][1] if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{tab}  eq 10);
+# 		$this_row{$subf[$i][0]} =$subf[$i][1] 
+		if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{tab}  eq 10) {
+            if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{isurl}) {
+                $this_row{$subf[$i][0]}="<a href=\"$subf[$i][1]\">$subf[$i][1]</a>";
+            } elsif ($tagslib->{$field->tag()}->{$subf[$i][0]}->{kohafield} eq "biblioitems.isbn") {
+                $this_row{$subf[$i][0]}=DisplayISBN($subf[$i][1]);
+            } else {
+                $this_row{$subf[$i][0]}=get_authorised_value_desc($field->tag(), $subf[$i][0], $subf[$i][1], '', $dbh);
+            }
+        }		
 		if (($field->tag eq $branchtagfield) && ($subf[$i][$0] eq $branchtagsubfield) && C4::Context->preference("IndependantBranches")) {
 			#verifying rights
 			my $userenv = C4::Context->userenv;
@@ -360,3 +381,30 @@
 	$template->param($error => 1);
 }
 output_html_with_http_headers $input, $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
+   }
+}
\ No newline at end of file





More information about the Koha-cvs mailing list