[Koha-cvs] koha/C4 Breeding.pm [dev_week]

Ryan Higgins rch at liblime.com
Sun Mar 25 00:34:36 CET 2007


CVSROOT:	/sources/koha
Module name:	koha
Branch:		dev_week
Changes by:	Ryan Higgins <rych>	07/03/24 23:34:36

Modified files:
	C4             : Breeding.pm 

Log message:
	remove char_decode; allow ovewrite of existing biblio

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/C4/Breeding.pm?cvsroot=koha&only_with_tag=dev_week&r1=1.7.2.1.2.4&r2=1.7.2.1.2.5

Patches:
Index: Breeding.pm
===================================================================
RCS file: /sources/koha/koha/C4/Breeding.pm,v
retrieving revision 1.7.2.1.2.4
retrieving revision 1.7.2.1.2.5
diff -u -b -r1.7.2.1.2.4 -r1.7.2.1.2.5
--- Breeding.pm	9 Feb 2007 20:32:05 -0000	1.7.2.1.2.4
+++ Breeding.pm	24 Mar 2007 23:34:36 -0000	1.7.2.1.2.5
@@ -60,8 +60,7 @@
 	my $dbh = C4::Context->dbh;
 	my $searchisbn = $dbh->prepare("select biblioitemnumber from biblioitems where isbn=?");
 	my $searchissn = $dbh->prepare("select biblioitemnumber from biblioitems where issn=?");
-	my $searchbreeding = $dbh->prepare("select id from marc_breeding
-where isbn=? and title=?");
+	my $searchbreeding = $dbh->prepare("select id from marc_breeding  where isbn=? and title=?");
 	my $insertsql = $dbh->prepare("insert into marc_breeding (file,isbn,title,author,marc,encoding,z3950random) values(?,?,?,?,?,?,?)");
 	my $replacesql = $dbh->prepare("update marc_breeding set file=?,isbn=?,title=?,author=?,marc=?,encoding=?,z3950random=? where id=?");
 	$encoding = C4::Context->preference("marcflavour") unless $encoding;
@@ -75,18 +74,22 @@
 		$breedingid=0;
 		my $marcrecord = MARC::File::USMARC::decode($marcarray[$i]."\x1D");
 		my @warnings = $marcrecord->warnings();
+		for my $warning (@warnings) {
+			warn "WARN".$warning;
+		}
 		if (scalar($marcrecord->fields()) == 0) {
 			$notmarcrecord++;
 		} else {
 			my $oldbiblio = MARCmarc2koha($dbh,$marcrecord,'');
-			$oldbiblio->{title} = char_decode($oldbiblio->{title},$encoding);
-			$oldbiblio->{author} = char_decode($oldbiblio->{author},$encoding);
+			#$oldbiblio->{title} = char_decode($oldbiblio->{title},$encoding);
+			#$oldbiblio->{author} = char_decode($oldbiblio->{author},$encoding);
 			# if isbn found and biblio does not exist, add it. If isbn found and biblio exists, overwrite or ignore depending on user choice
 			# drop every "special" char : spaces, - ...
 			$oldbiblio->{isbn} =~ s/ |-|\.//g,
 			$oldbiblio->{isbn} = substr($oldbiblio->{isbn},0,10);
 			$oldbiblio->{issn} =~ s/ |-|\.//g,
 			$oldbiblio->{issn} = substr($oldbiblio->{issn},0,10);
+
 			# search if biblio exists
 			my $biblioitemnumber;
 			if ($oldbiblio->{isbn}) {
@@ -96,7 +99,7 @@
 				$searchissn->execute($oldbiblio->{issn});
 				($biblioitemnumber) = $searchissn->fetchrow;
 			}
-			if ($biblioitemnumber) {
+			if ($biblioitemnumber && ( $overwrite_biblio eq 0 )) {
 				$alreadyindb++;
 			} else {
 				# search in breeding farm
@@ -118,6 +121,7 @@
 					} else {
 						$insertsql->execute($filename,substr($oldbiblio->{isbn}.$oldbiblio->{issn},0,10),$oldbiblio->{title},$oldbiblio->{author},$recoded,$encoding,$z3950random);
 					$breedingid=$dbh->{'mysql_insertid'};
+#					warn "breedingid: $breedingid";
 					}
 					$imported++;
 				}





More information about the Koha-cvs mailing list