Bug 21986: Do not escape quotation marks when cataloguing
[koha.git] / cataloguing / additem.pl
index 7f4880f..6bf4629 100755 (executable)
@@ -143,12 +143,10 @@ sub generate_subfield_form {
                 my $username=(C4::Context->userenv?C4::Context->userenv->{'surname'}:"superlibrarian");
                 $value=~s/<<USER>>/$username/g;
             }
-        } else {
-            $value =~ s/"/&quot;/g;
         }
-        
+
         $subfield_data{visibility} = "display:none;" if (($subfieldlib->{hidden} > 4) || ($subfieldlib->{hidden} <= -4));
-        
+
         my $pref_itemcallnumber = C4::Context->preference('itemcallnumber');
         if (!$value && $subfieldlib->{kohafield} eq 'items.itemcallnumber' && $pref_itemcallnumber) {
             my $CNtag       = substr($pref_itemcallnumber, 0, 3);
@@ -652,8 +650,8 @@ if ($op eq "additem") {
 #-------------------------------------------------------------------------------
 } elsif ($op eq "delallitems") {
 #-------------------------------------------------------------------------------
-    my $itemnumbers = C4::Items::GetItemnumbersForBiblio( $biblionumber );
-    foreach my $itemnumber ( @$itemnumbers ) {
+    my @itemnumbers = Koha::Items->search({ biblionumber => $biblionumber })->get_column('itemnumber');
+    foreach my $itemnumber ( @itemnumbers ) {
         $error = C4::Items::DelItemCheck( $biblionumber, $itemnumber );
         next if $error == 1; # Means ok
         push @errors,$error;
@@ -735,7 +733,9 @@ my @big_array;
 #---- finds where items.itemnumber is stored
 my (  $itemtagfield,   $itemtagsubfield) = &GetMarcFromKohaField("items.itemnumber", $frameworkcode);
 my ($branchtagfield, $branchtagsubfield) = &GetMarcFromKohaField("items.homebranch", $frameworkcode);
-C4::Biblio::EmbedItemsInMarcBiblio($temp, $biblionumber);
+C4::Biblio::EmbedItemsInMarcBiblio({
+    marc_record  => $temp,
+    biblionumber => $biblionumber });
 my @fields = $temp->fields();
 
 
@@ -903,6 +903,8 @@ foreach my $tag ( keys %{$tagslib}){
 }
 @loop_data = sort {$a->{subfield} cmp $b->{subfield} } @loop_data;
 
+my $item = Koha::Items->find($itemnumber); # We certainly want to fetch it earlier
+
 # what's the next op ? it's what we are not in : an add if we're editing, otherwise, and edit.
 $template->param(
     biblionumber => $biblionumber,
@@ -912,7 +914,7 @@ $template->param(
     item_header_loop => \@header_value_loop,
     item             => \@loop_data,
     itemnumber       => $itemnumber,
-    barcode          => GetBarcodeFromItemnumber($itemnumber),
+    barcode          => $item ? $item->barcode : undef,
     itemtagfield     => $itemtagfield,
     itemtagsubfield  => $itemtagsubfield,
     op      => $nextop,