work on bibliografija
[webpac2] / conf / bibliografija / biblio.pl
index 7005af6..b26129b 100644 (file)
@@ -2,17 +2,12 @@ if ( rec('942','u') ) {
 
 marc_clone();
 
+if ( rec('999','c') =~ m/305996/ ) {
+       marc_remove('520');
+}
+
 marc_remove('942');
 
-marc('942','0',
-       rec('942','0')
-);
-marc('942','2',
-       rec('942','2')
-);
-marc('942','6',
-       rec('942','6')
-);
 marc('942','a',
        rec('942','a')
 );
@@ -56,48 +51,110 @@ marc('942','n',
        rec('942','n')
 );
 
+#if ( rec('773','x') ) {
+#      marc_repeatable_subfield('942','r',
+#              lookup(
+#                      sub{ 
+#                              join_with(' ; ',
+#                                      rec('baza'),
+#                                      rec('coverage_policy'),
+#                                      rec('coverage_status'),
+#                                      join_with('-',
+#                                              rec('coverage_start'),
+#                                              rec('coverage_stop'),
+#                                      ),
+#                              );
+#                      },
+#                      'rbaze','rbaze',
+#                      sub{ rec('isn') },
+#                      sub{ rec('773','x') }
+#              )
+#      );
+#}
+#
+#if ( rec('773','x') ) {
+#      marc_repeatable_subfield('942','r',
+#              lookup(
+#                      sub{ 
+#                              join_with(' ; ',
+#                                      rec('baza'),
+#                                      rec('coverage_policy'),
+#                                      rec('coverage_status'),
+#                                      join_with('-',
+#                                              rec('coverage_start'),
+#                                              rec('coverage_stop'),
+#                                      ),
+#                              );
+#                      },
+#                      'rbaze','rbaze',
+#                      sub{ rec('isn') },
+#                      sub{ rec('773','y') }
+#              )
+#      );
+#}
+
 if ( rec('773','x') ) {
        marc_repeatable_subfield('942','r',
                lookup(
                        sub{ 
                                join_with(' ; ',
-                                       rec('baza'),
-                                       rec('coverage_policy'),
-                                       rec('coverage_status'),
+                                       rec('B'),
+                                       rec('N'),
+                                       rec('O'),
                                        join_with('-',
-                                               rec('coverage_start'),
-                                               rec('coverage_stop'),
+                                               rec('P'),
+                                               rec('R'),
                                        ),
-                               );
+                               )
                        },
                        'rbaze','rbaze',
-                       sub{ rec('isn') },
-                       sub{ rec('773','x') }
+                       sub{ regex('s/-//g', rec('C')) },
+                       sub{ regex('s/-//g', rec('773','x')) }
                )
        );
 }
-
 if ( rec('773','x') ) {
        marc_repeatable_subfield('942','r',
                lookup(
                        sub{ 
                                join_with(' ; ',
-                                       rec('baza'),
-                                       rec('coverage_policy'),
-                                       rec('coverage_status'),
+                                       rec('B'),
+                                       rec('N'),
+                                       rec('O'),
                                        join_with('-',
-                                               rec('coverage_start'),
-                                               rec('coverage_stop'),
+                                               rec('P'),
+                                               rec('R'),
                                        ),
-                               );
+                               )
                        },
                        'rbaze','rbaze',
-                       sub{ rec('isn') },
-                       sub{ rec('773','x') }
+                       sub{ regex('s/-//g', rec('D')) },
+                       sub{ regex('s/-//g', rec('773','x')) }
                )
        );
 }
 
+#if ( rec('773','x') ) {
+#      marc_repeatable_subfield('942','r',
+#              lookup(
+#                      sub{ 
+#                              join_with(' ; ',
+#                                      rec('B'),
+#                                      rec('N'),
+#                                      rec('O'),
+#                                      join_with('-',
+#                                              rec('P'),
+#                                              rec('R'),
+#                                      ),
+#                              );
+#                      },
+#                      'rbaze','rbaze',
+#                      sub{ rec('C') },
+#                      sub{ rec('773','z') }
+#              )
+#      );
+#}
+
 marc('942','s',
        rec('942','s')
 );