[% END %]
[% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
</div></li>
+
[% END %]</ol></div><!-- /iteminformation -->
-
+
+ <hr>
+ <div class="subfield_line">
+ <label for="number_of_copies">Number of copies to be made of this item </label> <input type="text" id="number_of_copies[% newserialloo.serialid | html %][% newserialloo.countitems | html %][% iteminformatio.subfield | html %][% iteminformatio.random | html %]" name="number_of_copies" value="1" size="2"> <span class="hint">The barcode you enter will be incremented for each additional item.</p>
+ </div>
+
<input type="hidden" name="moditem" value="" />
<input type="hidden" name="tag" value="[% item.itemtagfield | html %]" />
<input type="hidden" name="subfield" value="[% item.itemtagsubfield | html %]" />
[% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
</div>
</li>[% END %]</ol>
-
+
+ <hr>
+ <div class="subfield_line">
+ <label for="number_of_copies">Number of copies to be made of this item </label> <input type="text" id="number_of_copies[% newserialloo.serialid | html %][% newserialloo.countitems | html %][% iteminformatio.subfield | html %][% iteminformatio.random | html %]" name="number_of_copies" value="1" size="2"> <span class="hint">The barcode you enter will be incremented for each additional item.</p>
+ </div>
+
<input type="hidden" name="moditem" value="" />
<input type="hidden" name="tag" value="[% newserialloo.itemtagfield | html %]" />
<input type="hidden" name="subfield" value="[% newserialloo.itemtagsubfield | html %]" />
my @itemid = $query->multi_param('itemid');
my @ind_tag = $query->multi_param('ind_tag');
my @indicator = $query->multi_param('indicator');
+ my @num_copies = $query->multi_param('number_of_copies');
#Rebuilding ALL the data for items into a hash
# parting them on $itemid.
$field_values[$i];
push @{ $itemhash{ $itemid[$i] }->{'ind_tag'} }, $ind_tag[$i];
push @{ $itemhash{ $itemid[$i] }->{'indicator'} }, $indicator[$i];
+ push @{ $itemhash{ $itemid[$i] }->{'num_copies'} }, $num_copies[$i];
}
foreach my $item ( keys %itemhash ) {
$itemhash{$item}->{'ind_tag'}
);
- # warn $xml;
+ # warn $xml;
my $bib_record = MARC::Record::new_from_xml( $xml, 'UTF-8' );
if ( $item =~ /^N/ ) {
- #New Item
+ $itemhash{$item}->{'num_copies'} //= 1;
+
+ for (my $copy = 0; $copy < $itemhash{$item}->{'num_copies'}[$index];){
+
+ # New Item
# if autoBarcode is set to 'incremental', calculate barcode...
my ( $barcodetagfield, $barcodetagsubfield ) = GetMarcFromKohaField( 'items.barcode' );
$sth_barcode->execute;
my ($newbarcode) = $sth_barcode->fetchrow;
-# OK, we have the new barcode, add the entry in MARC record # FIXME -> should be using barcode plugin here.
- $bib_record->field($barcodetagfield)
- ->update( $barcodetagsubfield => ++$newbarcode );
+ # OK, we have the new barcode, add the entry in MARC record # FIXME -> should be using barcode plugin here.
+ $bib_record->field($barcodetagfield)->update( $barcodetagsubfield => ++$newbarcode );
}
}
# check for item barcode # being unique
my $exists;
- if (
- $bib_record->subfield(
- $barcodetagfield, $barcodetagsubfield
- )
- )
- {
+ if ( $bib_record->subfield( $barcodetagfield, $barcodetagsubfield ) ) {
my $barcode = $bib_record->subfield( $barcodetagfield, $barcodetagsubfield );
+
+ if ($copy > 0){
+ use C4::Barcodes;
+ my $barcodeobj = C4::Barcodes->new;
+ my $newbarcode = $barcodeobj->next_value($barcode);
+ $barcode = $newbarcode;
+ $bib_record->field($barcodetagfield)->update($barcodetagsubfield => $barcode);
+ }
+
$exists = Koha::Items->find({barcode => $barcode});
}
AddItem2Serial( $itemhash{$item}->{serial},
$itemnumber );
}
+ $copy++;
}
+
+ } # num_copies for loop
+
else {
#modify item