[Koha-cvs] CVS: koha/acqui.simple addbiblio.pl,1.52.2.5,1.52.2.6
Paul POULAIN
tipaul at users.sourceforge.net
Fri May 20 00:17:35 CEST 2005
Update of /cvsroot/koha/koha/acqui.simple
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2506/acqui.simple
Modified Files:
Tag: rel_2_2
addbiblio.pl
Log Message:
bugfix in authority reporting & field duplicating
Index: addbiblio.pl
===================================================================
RCS file: /cvsroot/koha/koha/acqui.simple/addbiblio.pl,v
retrieving revision 1.52.2.5
retrieving revision 1.52.2.6
diff -C2 -r1.52.2.5 -r1.52.2.6
*** addbiblio.pl 25 Mar 2005 12:52:42 -0000 1.52.2.5
--- addbiblio.pl 19 May 2005 22:17:33 -0000 1.52.2.6
***************
*** 264,268 ****
}
# If there is more than 1 field, add an empty hidden field as separator.
! if ($#fields >1) {
my @subfields_data;
my %tag_data;
--- 264,268 ----
}
# If there is more than 1 field, add an empty hidden field as separator.
! if ($#fields >=1) {
my @subfields_data;
my %tag_data;
***************
*** 435,468 ****
my @ind_tag = $input->param('ind_tag');
my @indicator = $input->param('indicator');
- splice(@tags,$addedfield,0,$tags[$addedfield]);
- splice(@subfields,$addedfield,0,$subfields[$addedfield]);
- splice(@values,$addedfield,0,$values[$addedfield]);
- splice(@ind_tag,$addedfield,0,$ind_tag[$addedfield]);
- my %indicators;
- for (my $i=0;$i<=$#ind_tag;$i++) {
- $indicators{$ind_tag[$i]} = $indicator[$i];
- }
- # search the part of the array to duplicate.
- my $start=0;
- my $end=0;
- my $started;
- for (my $i=$#tags;$i>0;$i--) {
- $end=$i if ($end eq 0 && $tags[$i] == $addedfield);
- $start=$i if ($end>0 && $tags[$i] eq $addedfield);
- last if ($end>0 && $tags[$i] ne $addedfield);
- }
- # add an empty line in all arrays. This forces a new field in MARC::Record.
- splice(@tags,$end+1,0,'');
- splice(@subfields,$end+1,0,'');
- splice(@values,$end+1,0,'');
- splice(@ind_tag,$end+1,0,'');
- splice(@indicator,$end+1,0,'');
- # then duplicate the field.
- splice(@tags,$end+2,0, at tags[$start..$end]);
- splice(@subfields,$end+2,0, at subfields[$start..$end]);
- splice(@values,$end+2,0, at values[$start..$end]);
- splice(@ind_tag,$end+2,0, at ind_tag[$start..$end]);
- splice(@indicator,$end+2,0, at indicator[$start..$end]);
-
my %indicators;
for (my $i=0;$i<=$#ind_tag;$i++) {
--- 435,438 ----
***************
*** 470,473 ****
--- 440,446 ----
}
my $record = MARChtml2marc($dbh,\@tags,\@subfields,\@values,%indicators);
+ # adding an empty field
+ my $field = MARC::Field->new("$addedfield",'','','a'=> "");
+ $record->append_fields($field);
build_tabs ($template, $record, $dbh,$encoding);
build_hidden_data;
More information about the Koha-cvs
mailing list