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