Lines 168-189
if ($op eq ""){
Link Here
|
168 |
for my $biblio (@$biblios){ |
168 |
for my $biblio (@$biblios){ |
169 |
# Check if this import_record_id was selected |
169 |
# Check if this import_record_id was selected |
170 |
next if not grep { $_ eq $$biblio{import_record_id} } @import_record_id_selected; |
170 |
next if not grep { $_ eq $$biblio{import_record_id} } @import_record_id_selected; |
|
|
171 |
|
172 |
# With this we know from which index from the http params we get the data |
173 |
my $index; |
174 |
for (my $i = 0; $i <= $#import_record_id_selected; $i++) { |
175 |
if ($import_record_id_selected[$i] eq $$biblio{import_record_id}) { |
176 |
$index = $i; |
177 |
last; |
178 |
} |
179 |
} |
171 |
my ( $marcblob, $encoding ) = GetImportRecordMarc( $biblio->{'import_record_id'} ); |
180 |
my ( $marcblob, $encoding ) = GetImportRecordMarc( $biblio->{'import_record_id'} ); |
172 |
my $marcrecord = MARC::Record->new_from_usmarc($marcblob) || die "couldn't translate marc information"; |
181 |
my $marcrecord = MARC::Record->new_from_usmarc($marcblob) || die "couldn't translate marc information"; |
173 |
my $match = GetImportRecordMatches( $biblio->{'import_record_id'}, 1 ); |
182 |
my $match = GetImportRecordMatches( $biblio->{'import_record_id'}, 1 ); |
174 |
my $biblionumber=$#$match > -1?$match->[0]->{'biblionumber'}:0; |
183 |
my $biblionumber=$#$match > -1?$match->[0]->{'biblionumber'}:0; |
175 |
my $c_overlay = shift @overlay; |
184 |
my $c_overlay = $overlay[$index]; |
176 |
my $c_quantity = shift( @quantities ) || GetMarcQuantity($marcrecord, C4::Context->preference('marcflavour') ) || 1; |
185 |
my $c_quantity = $quantities[$index] || GetMarcQuantity($marcrecord, C4::Context->preference('marcflavour') ) || 1; |
177 |
my $c_budget_id = shift( @budgets_id ) || $input->param('all_budget_id') || $budget_id; |
186 |
my $c_budget_id = $budgets_id[$index] || $input->param('all_budget_id') || $budget_id; |
178 |
my $c_discount = shift ( @discount); |
187 |
my $c_discount = $discount[$index]; |
179 |
if ($c_discount) { |
188 |
if ($c_discount) { |
180 |
$c_discount =~ s/%//g; #This screws up number conversion badly |
189 |
$c_discount =~ s/%//g; #This screws up number conversion badly |
181 |
$c_discount =~ s/,/./g; #Make this an actual digit for Perl |
190 |
$c_discount =~ s/,/./g; #Make this an actual digit for Perl |
182 |
$c_discount = $c_discount / 100 if $c_discount >= 1; |
191 |
$c_discount = $c_discount / 100 if $c_discount >= 1; |
183 |
} |
192 |
} |
184 |
$c_discount = $c_discount / 100 if $c_discount && $c_discount > 1; |
193 |
$c_discount = $c_discount / 100 if $c_discount && $c_discount > 1; |
185 |
my $c_sort1 = shift( @sort1 ) || $input->param('all_sort1') || ''; |
194 |
my $c_sort1 = $sort1[$index] || $input->param('all_sort1') || ''; |
186 |
my $c_sort2 = shift( @sort2 ) || $input->param('all_sort2') || ''; |
195 |
my $c_sort2 = $sort2[$index] || $input->param('all_sort2') || ''; |
187 |
|
196 |
|
188 |
# INSERT the biblio if no match found, or if we want to overlay the existing match |
197 |
# INSERT the biblio if no match found, or if we want to overlay the existing match |
189 |
if ( not($biblionumber) || $c_overlay ) { |
198 |
if ( not($biblionumber) || $c_overlay ) { |
Lines 235-241
if ($op eq ""){
Link Here
|
235 |
currency => $cgiparams->{'all_currency'}, |
244 |
currency => $cgiparams->{'all_currency'}, |
236 |
); |
245 |
); |
237 |
# get the price if there is one. |
246 |
# get the price if there is one. |
238 |
my $price= shift( @prices ) || GetMarcPrice($marcrecord, C4::Context->preference('marcflavour')); |
247 |
my $price = $prices[$index] || GetMarcPrice($marcrecord, C4::Context->preference('marcflavour')); |
239 |
if ($price){ |
248 |
if ($price){ |
240 |
# in France, the cents separator is the , but sometimes, ppl use a . |
249 |
# in France, the cents separator is the , but sometimes, ppl use a . |
241 |
# in this case, the price will be x100 when unformatted ! Replace the . by a , to get a proper price calculation |
250 |
# in this case, the price will be x100 when unformatted ! Replace the . by a , to get a proper price calculation |
242 |
- |
|
|