various fixes
authorDobrica Pavlinusic <dpavlin@rot13.org>
Sun, 16 May 2004 22:12:02 +0000 (22:12 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Sun, 16 May 2004 22:12:02 +0000 (22:12 +0000)
git-svn-id: file:///home/dpavlin/private/svn/webpac/trunk@330 13eb9ef6-21d5-0310-b721-a9d68796d827

tools/mods2unimarc.pl

index ede6a8d..cfca5e2 100755 (executable)
@@ -262,10 +262,22 @@ sub mods {
                        if ($related eq "series") {
                                marc_add_rep($m_cache,'225','a',$ri->{titleInfo}->{title});
                                foreach my $pn (@{$ri->{titleInfo}->{partNumber}}) {
-                                       marc_add_rep($m_cache,'999','a',$pn);
+                                       if ($journal) {
+                                               marc_add_rep($m_cache,'999','a',$pn);
+                                       } else {
+                                               marc_add_rep($m_cache,'225','v',$pn);
+                                       }
                                }
                        } elsif ($related eq "preceding") {
-                               marc_add_rep($m_cache,'430','a',$ri->{titleInfo}->{title});
+                               marc_add($m_cache,'520','a',$ri->{titleInfo}->{title});
+                               if ($ri->{identifier}) {
+                                       if ($ri->{identifier}->{type} eq "issn") {
+                                               marc_add($m_cache,'520','x',$ri->{identifier}->{content});
+                                       } else {
+                                               die "can't store identifier type $type";
+                                       }
+                               }
+                               marc_rep($m_cache,'520');
                        } else {
                                die "can't parse related item type $related" if ($related);
                        }