local
[webpac2] / conf / normalize / ff-nakladnicka.pl
1 if (
2         rec('225','a')  # da li je nakladnicka cjelina?
3 #       &&              # i
4 #       count( lookup(
5 #               sub { 1 },
6 #               'ffsf','blibri',
7 #               sub {
8 #                       join_with('',
9 #                               rec('225','a'),
10 #                               rec('210','a'),
11 #                               rec('210','b'),
12 #                       )
13 #               }
14 #       ) ) > 1
15 ) {
16
17
18 my $series_key =
19 join_with('',
20         rec('225','a'),
21         rec('210','a'),
22         rec('210','b'),
23 );
24
25 my $series = get( $series_key );
26
27 if ( $series ) {
28         warn "nije novi";
29 } else {
30
31
32 $series = join_with('',
33         config(),
34         ' LS',
35         rec('000')
36 );
37
38 set( $series_key => $series );
39
40 # Leader
41 marc_leader('05','n');
42 marc_leader('06','a');
43 marc_leader('07','s');
44 marc_leader('17','7');
45 marc_leader('18','i');
46
47 ## 008 
48
49 marc_fixed('008',00,
50         '070401'
51 );
52
53 marc_fixed('008','35',
54         first( lc( rec('101') ) )
55 );
56
57 marc('022','a',
58         rec('225','x')
59 );
60
61 marc('035','6', $series );
62
63 marc('040','a',
64         'HR FFZG'
65 );
66
67 marc('040','b',
68         'hrv'
69 );
70
71 marc('040','e',
72         'HR PPIAK'
73 );
74
75 marc_indicators('041', 0, ' ');
76
77 marc_repeatable_subfield('041','a',
78         rec('101')
79 );
80
81 # indikatori za 245 
82
83 my $i1;
84
85 if ( rec('700') || rec('710') ) {
86         $i1 = 1;
87
88 } else {
89         $i1 = 0;
90 }
91         
92 marc_indicators('245', $i1, 0);
93
94 if (    ( rec('200','a') =~ m/^Die /) || 
95         ( rec('200','a') =~ m/^Das /) || 
96         ( rec('200','a') =~ m/^The /) ) {
97                 marc_indicators('245', $i1, 4);
98
99
100 if (    ( rec('200','a') =~ m/^A /) && ( rec(101) =~ m/ENG/ ) ) {
101                 marc_indicators('245', $i1, 2);
102
103
104 if (    ( rec('200','a') =~ m/^An /) && ( rec(101) =~ m/ENG/ ) ) {
105                 marc_indicators('245', $i1, 2);
106
107
108
109 ## 245
110
111 marc_compose('245',
112         'a', suffix(
113                 ( ! ( rec('225','d') || rec('225','e') ) ) && ( rec('225','f') ) ? ' / ' :  
114                 ( rec('225','d') ) ? ' = ' :
115                 ( rec('225','e') ) ? ' : ' :
116                 ( rec('225','i') ) ? '. ' :
117                         '', 
118                         rec('225','a'),
119         ),
120         'b', suffix(
121                 ( rec('225','d') && rec('225','f') ) ? ' / ' : 
122                         '',
123                         rec('225','d'),
124         ),
125         'b', suffix(
126                 ( rec('225','e') && rec('225','f') ) ? ' / ' : 
127                         '',
128                         rec('225','e'),
129         ),
130         'c', suffix(
131                 ( rec('225','f') && rec('225','i') ) ? '. ' :
132                         '',
133                         rec('225','f'),
134         ),
135         'p', rec('225','i'),
136 );
137
138 #marc_compose('245',
139 #       'a', suffix(
140 #               ( ! rec('225','p') && ( rec('225','f') || rec('225','c') ) ) ? ' / ' :  
141 #               ( rec('225','p') && rec('225','c') ) ? ' : '  : 
142 #                       '', 
143 #                       first(rec('225','a')),
144 #       ),
145 #       'b', suffix(
146 #               ( rec('225','p') && rec('225','f') ) ? ' / ' : 
147 #               ( rec('225','p') && rec('225','c') ) ? '. '  : 
148 #                       '',
149 #                       rec('225','p'),
150 #       ),
151 #       'c', suffix(
152 #               ( rec('225','f') && rec('225','c') ) ? '. ' :
153 #                       '',
154 #                       rec('225','f'),
155 #       ),
156 #);
157
158 marc_original_order('260', '210');
159
160 marc_remove('260','c');
161
162 ## FIXME - UPISATI PODATAK U 260c
163
164 #_debug(2);
165
166 #marc('900','a',
167 #       lookup(
168 #               sub { rec('702','a') . ', ' . rec('702','b') },
169 #               'nsk','baza',
170 #               sub { rec('200','a') . rec('210','a') . rec('210','c') },
171 #               sub { rec('225','a') . rec('210','a') . rec('210','b') },
172 #       )
173 #);
174
175 #_debug(0);
176
177 #marc_duplicate();
178 #marc_remove('*');
179
180
181 } # $series
182
183 } # nakladnièka cjelina