join_with('',
# config('input normalize path'),
# config('name'),
- '(HR-ZaHPM)',
+ '(HR-ZaHPM)isis',
# config(),
# config('input name'),
# id(),
'ppiak'
);
-### 041 - indikatori
-## pretpostavke o indikatorima
-## 1. Ako postoji polje 300 i ono sadrzi /Prijevod/ ili /Izv. stv. nasl./, i1 = 1
-## (Da li je napomena uvijek pisana?)
-## 2. Podatak o prevodiocu u 200g. Problem: razliciti oblici rijeci, razliciti jezici.
-## 3. Ako u UDK oznaci postoji "=", bez zagrada, onda je to prijevod
-## (ako postoje zagrade pr. 94(=411.16) onda su to pomocne oznake)
-## pr. 821.111-2=163.42 je prijevod engleske drame na HR.
-## to ima samo za knjizevna djela, eseje....
-## ovo treba kasnije ispravljati
-
-#if ( rec('675') =~ m/\d=\d/ ) ?
-
### 041
## ponovljivo polje (101) konvertira se u ponovljivo potpolje (041a)
## koristi se kad ima vise od jednog jezika, ili kad se radi o prijevodu
if ( ( count( rec('101','a') ) > 1 ) || ( rec('101','b') ) || ( rec('101','h') ) ) {
- marc_original_order('041','101');
if ( ( grep( m/prijevod/i, rec('300') ) ) || ( rec('101','h') ) ) {
- marc_indicators('041', 1, ' ');
+ marc_indicators('101', 1, ' ');
} else {
- marc_indicators('041', ' ', ' ');
+ marc_indicators('101', ' ', ' ');
}
+ marc_original_order('041','101');
}
my $titleind1;
-if ( rec('700') || rec('710') ) {
+if ( rec('700') || rec('710') || rec('711') ) {
$titleind1 = 1;
} else {
$titleind1 = 0;
( rec('200','d') ) ? ' =' :
( rec('200','e') ) ? ' :' :
( rec('200','k') ) ? ' ;' :
+ ( rec('200','h') ) ? '.' :
'.',
rec('200','a'),
),
'b', suffix(
- ( rec('200','d') && rec('200','f') ) ? ' /' :
- ( rec('200','d') && rec('200','c') ) ? '.' :
+ ( rec('200','d') && ! rec('200','f') ) ? '.' :
+ ( rec('200','d') && ! rec('200','f') ) ? '.' :
'',
rec('200','d'),
),
'b', suffix(
( rec('200','e') && rec('200','f') ) ? ' /' :
- ( rec('200','e') && rec('200','c') ) ? '.' :
- '',
+ ( rec('200','e') && rec('200','h') && ! rec('200','f') ) ? '.' :
+ '.',
rec('200','e'),
),
'b', suffix(
'',
rec('200','k'),
),
+ 'n', suffix(
+ ( rec('200','h') && rec('200','f') ) ? ' /' :
+ ( rec('200','h') && rec('200','i') ) ? '.' :
+ ( rec('200','h') && ! ( rec('200','i') || rec('200','f') ) ) ? '.' :
+ '',
+ rec('200','h'),
+ ),
+ 'p', suffix(
+ ( rec('200','i') && rec('200','f') ) ? ' /' :
+ ( rec('200','i') && ! rec('200','f') ) ? '.' :
+ '',
+ rec('200','i'),
+ ),
'c', suffix(
( rec('200','f') && rec('200','c') ) ? '. ' :
'',
}
-
-### 740 - Added Entry - Uncontrolled Related/Analytical Title
-## raspraviti
-## nadopuniti prvi indikator prema clanovima
-marc_indicators('740', '0', ' ');
-
-# if ( ! rec('464') ) {
-# marc('740','a',
-# rec('200','c')
-# );
-
-#marc('740','a',
-# rec('200','k')
-#);
-
-# } else {
-
-#marc('740','a',
-# rec('464','a')
-#);
-
-# };
-
-### 760 w ---------------------------------------------
-## generiranje zapisa o nakladnickoj cjelini i povezivanje podredenog zapisa s nadredenim
-
-#if (
-# rec('225','a') # da li je nakladnicka cjelina?
-#) {
-
-#my $series_key =
-#join_with('',
-# rec('225','a'),
-# rec('210','a'),
-# rec('210','b'),
-#);
-#
-#my $series = get( $series_key );
-#
-#if ($series) {
-# warn "nije novi";
-#} else {
-#
-#$series = join_with('',
-# uc( config() ),
-# ' LS',
-# rec('000')
-#);
-#
-#set( $series_key => $series );
-#
-#} # $series
-#} # nakladnicka cjelina
-#
-#my $series_key = join_with('',
-# rec('225','a'),
-# rec('210','a'),
-# rec('210','b'),
-#);
-#
-#if ($series_key) {
-#
-# marc_indicators('760', 0, ' ');
-#
-# marc('760','t',
-# rec('225','a')
-# );
-# marc('760','w',
-# get( $series_key )
-# );
-#}
-
-# ## testing
-#
-# my $dup_key = join_with('',
-# rec('200','a'),
-#);
-#
-#if ($dup_key) {
-# marc('995','a',
-# get( $dup_key )
-# );
-#}
-#
-#
-# marc_indicators('776', 0, ' ');
-#
-# marc('776','a',
-# rec('452','1')
-# );
-#
-# -------------------------------------------------------------------
-
-### 774 - Constituent Item Entry - to bi trebali koristiti ali ne koristimo jer NSK to koristi za nesto drugo
-### 787 - Nonspecific Relationship Entry
-
-#marc_indicators('787','0',' ');
-#
-#marc_compose('787',
-# 'g', rec('230','v'),
-# 't', rec('230','a'),
-# 'b', rec('240','a'),
-# 'd', rec('250','a'),
-# 'd', rec('250','d'),
-# 'h', rec('260','a'),
-# 'k', rec('270','a'),
-# 'n', join_with('. - ',
-# rec('280'),
-# ),
-# 'x', join_with(', ',
-# rec('290'),
-# )
-#);
-#marc_compose('787',
-# 'g', rec('231','v'),
-# 't', rec('231','a'),
-# 'b', rec('241','a'),
-# 'd', rec('251','a'),
-# 'd', rec('251','d'),
-# 'h', rec('261','a'),
-# 'k', rec('271','a'),
-# 'n', join_with('. - ',
-# rec('281'),
-# ),
-# 'x', join_with(', ',
-# rec('291'),
-# )
-#);
-#marc_compose('787',
-# 'g', rec('232','v'),
-# 't', rec('232','a'),
-# 'b', rec('242','a'),
-# 'd', rec('252','a'),
-# 'd', rec('252','d'),
-# 'h', rec('262','a'),
-# 'k', rec('272','a'),
-# 'n', join_with('. - ',
-# rec('282'),
-# ),
-# 'x', join_with(', ',
-# rec('292'),
-# )
-#);
-#marc_compose('787',
-# 'g', rec('233','v'),
-# 't', rec('233','a'),
-# 'b', rec('243','a'),
-# 'd', rec('253','a'),
-# 'h', rec('263','a'),
-# 'k', rec('273','a'),
-# 'n', join_with('. - ',
-# rec('283'),
-# ),
-# 'x', join_with(', ',
-# rec('293'),
-# )
-#);
-
-
### 852 - ne koristimo, koristimo 942 i 952
### 876 - item information - basic bibliographic unit (R)
# rec('991','t'),
#);
-### 886 - former marc
-# inicijale treba prebaciti u neko lokalno polje, a ovo polje nam ne treba
-#
-# marc_indicators('886', 2, ' ');
-# marc('886','2',
-# 'ffmarc'
-# );
-# marc('886','a',
-# '994'
-# );
-# marc('886','b',
-# join_with(''.
-# '##^a',
-# join_with('',
-# prefix('^a',
-# rec('994','a'),
-# ),
-# prefix('^b',
-# rec('994','b')
-# )
-# )
-# )
-#);
### KOHA items
-
marc('942','b',
'LIB'
);
-marc('942','c',
- 'K'
-);
+if ( rec('245') =~ m/Elektronička građa/ ) {
+ marc('942','c',
+ 'CD'
+ );
+} elsif ( rec('610') =~ m/disertacija/ ) {
+ marc('942','c',
+ 'DIS'
+ );
+} elsif ( rec('610') =~ m/magistarski/ ) {
+ marc('942','c',
+ 'MAG'
+ );
+} elsif ( rec('990') =~ m/(separat|posebni)/ ) {
+ marc('942','c',
+ 'SEP'
+ );
+} elsif ( rec('990') =~ m/starih/ ) {
+ marc('942','c',
+ 'OLD'
+ );
+} else {
+ marc('942','c',
+ 'BOOK'
+ );
+}
+
+# HPM local
-marc('952','a',
- 'HPM'
+marc('991','a',
+ rec('991','b')
);
-marc('952','b',
- 'HPM'
+marc('992','a',
+ rec('992')
+);
+marc('993','a',
+ rec('990')
);
+
+
+# Items
+
marc('952','e',
rec('991','a')
);
marc('952','t',
rec('991','b')
);
-marc('952','o',
- rec('990')
-);
-
-
-
-
-
} # polje 200a