Bug 12495 - Include streetnumber in hold alert address
[koha_fer] / C4 / Ris.pm
index 085b09c..d601c96 100644 (file)
--- a/C4/Ris.pm
+++ b/C4/Ris.pm
@@ -60,12 +60,12 @@ package C4::Ris;
 #
 
 #use strict;
-#use warnings; FIXME - Bug 2505
+#use warnings;
 
 use vars qw($VERSION @ISA @EXPORT);
 
 # set the version for version checking
-$VERSION = 3.00;
+$VERSION = 3.07.00.049;
 
 @ISA = qw(Exporter);
 
@@ -209,7 +209,12 @@ sub marc2ris {
            &print_pubinfo($record->field('210'));
        }
        else { ## marc21, ukmarc
-           &print_pubinfo($record->field('260'));
+            if ($record->field('264')) {
+                 &print_pubinfo($record->field('264'));
+            }
+            else {
+            &print_pubinfo($record->field('260'));
+            }
        }
 
        ## 6XX fields contain KW candidates. We add all of them to a
@@ -252,7 +257,7 @@ sub marc2ris {
        elsif ($intype eq "ukmarc") {
            foreach ('500', '501', '502', '503', '504', '505', '506', '508', '514', '515', '516', '521', '524', '525', '528', '530', '531', '532', '533', '534', '535', '537', '538', '540', '541', '542', '544', '554', '555', '556', '557', '561', '563', '580', '583', '584', '586') {
                &pool_subx(\@notepool, $_, $record->field($_));
-           }
+        }
        }
        else { ## assume marc21
            foreach ('500', '501', '502', '504', '505', '506', '507', '508', '510', '511', '513', '514', '515', '516', '518', '521', '522', '524', '525', '526', '530', '533', '534', '535') {
@@ -642,7 +647,7 @@ sub print_pubinfo {
     my($pubinfofield) = @_;
 
     if (!$pubinfofield) {
-       print "<marc>no publication information found (260)\r\n" if $marcprint;
+    print "<marc>no publication information found (260/264)\r\n" if $marcprint;
        warn("no publication information found") if $marcprint;
     }
     else {
@@ -763,7 +768,7 @@ sub get_keywords {
     my @subfields = ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'x', 'y', 'z', '2', '3', '4');
 
     ## loop over all 6XX fields
-    foreach $kwfield (@keywords) {
+    foreach my $kwfield (@keywords) {
        if ($kwfield != undef) {
            ## authornames get special treatment
            if ($fieldname eq "600") {
@@ -776,9 +781,9 @@ sub get_keywords {
                @kwsubfields = $kwfield->subfields();
                
                ## loop over all available subfield tuples
-               foreach $kwtuple (@kwsubfields) {
+        foreach my $kwtuple (@kwsubfields) {
                    ## loop over all subfields to check
-                   foreach $subfield (@subfields) {
+            foreach my $subfield (@subfields) {
                        ## [0] contains subfield code
                        if (@$kwtuple[0] eq $subfield) {
                            ## [1] contains value, remove trailing separators
@@ -886,15 +891,15 @@ sub pool_subx {
     }
 
     ## loop over all notefields
-    foreach $notefield (@notefields) {
+    foreach my $notefield (@notefields) {
        if ($notefield != undef) {
            ## retrieve all available subfield tuples
            @notesubfields = $notefield->subfields();
 
            ## loop over all subfield tuples
-           foreach $notetuple (@notesubfields) {
+        foreach my $notetuple (@notesubfields) {
                ## loop over all subfields to check
-               foreach $subfield (@subfields) {
+        foreach my $subfield (@subfields) {
                    ## [0] contains subfield code
                    if (@$notetuple[0] eq $subfield) {
                        ## [1] contains value, remove trailing separators
@@ -927,20 +932,20 @@ sub print_abstract {
     my @abstrings;
 
     ## loop over all abfields
-    foreach $abfield (@abfields) {
-       foreach $field (@subfields) { 
-           if (length ($abfield->subfield($field)) > 0) {
-               my $ab = $abfield->subfield($field);
+    foreach my $abfield (@abfields) {
+        foreach my $field (@subfields) {
+            if ( length( $abfield->subfield($field) ) > 0 ) {
+                my $ab = $abfield->subfield($field);
 
-               print "<marc>field 520 subfield $field: $ab\r\n" if $marcprint;
+                print "<marc>field 520 subfield $field: $ab\r\n" if $marcprint;
 
-               ## strip trailing separators
-               $ab =~ s% *[;,:./]*$%%;
+                ## strip trailing separators
+                $ab =~ s% *[;,:./]*$%%;
 
-               ## add string to the list
-               push (@abstrings, $ab);
-           }
-       }
+                ## add string to the list
+                push( @abstrings, $ab );
+            }
+        }
     }
 
     my $allabs = join "; ", @abstrings;