Bug 7905: Follow up - Multi-line subscription notes
[koha.git] / acqui / neworderempty.pl
index 7fee382..08693d1 100755 (executable)
@@ -75,7 +75,6 @@ use C4::Input;
 use C4::Auth;
 use C4::Budgets;
 use C4::Input;
-use C4::Dates;
 
 use C4::Bookseller  qw/ GetBookSellerFromId /;
 use C4::Acquisition;
@@ -123,6 +122,12 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 );
 
 my $marcflavour = C4::Context->preference('marcflavour');
+
+if(!$basketno) {
+    my $order = GetOrder($ordernumber);
+    $basketno = $order->{'basketno'};
+}
+
 my $basket = GetBasket($basketno);
 my $contract = &GetContract($basket->{contractnumber});
 
@@ -259,6 +264,8 @@ foreach my $r (@{$budgets}) {
     };
 }
 
+@{$budget_loop} =
+  sort { uc( $a->{b_txt}) cmp uc( $b->{b_txt}) } @{$budget_loop};
 
 if ($close) {
     $budget_id      =  $data->{'budget_id'};
@@ -303,17 +310,15 @@ if ($CGIsort2) {
 }
 
 if (C4::Context->preference('AcqCreateItem') eq 'ordering' && !$ordernumber) {
-    # prepare empty item form
-    my $cell = PrepareItemrecordDisplay('','','','ACQ');
-#     warn "==> ".Data::Dumper::Dumper($cell);
-    unless ($cell) {
-        $cell = PrepareItemrecordDisplay('','','','');
+    # Check if ACQ framework exists
+    my $marc = GetMarcStructure(1, 'ACQ');
+    unless($marc) {
         $template->param('NoACQframework' => 1);
     }
-    my @itemloop;
-    push @itemloop,$cell;
-    
-    $template->param(items => \@itemloop);
+    $template->param(
+        AcqCreateItemOrdering => 1,
+        UniqueItemFields => C4::Context->preference('UniqueItemFields'),
+    );
 }
 # Get the item types list, but only if item_level_itype is YES. Otherwise, it will be in the item, no need to display it in the biblio
 my @itemtypes;
@@ -340,10 +345,10 @@ $template->param(
     basketbooksellernote => $basket->{booksellernote},
     basketcontractno     => $basket->{contractnumber},
     basketcontractname   => $contract->{contractname},
-    creationdate         => C4::Dates->new($basket->{creationdate},'iso')->output,
+    creationdate         => $basket->{creationdate},
     authorisedby         => $basket->{'authorisedby'},
     authorisedbyname     => $basket->{'authorisedbyname'},
-    closedate            => C4::Dates->new($basket->{'closedate'},'iso')->output,
+    closedate            => $basket->{'closedate'},
     # order details
     suggestionid         => $suggestion->{suggestionid},
     surnamesuggestedby   => $suggestion->{surnamesuggestedby},
@@ -367,6 +372,7 @@ $template->param(
     editionstatement => $data->{'editionstatement'},
     budget_loop      => $budget_loop,
     isbn             => $data->{'isbn'},
+    ean              => $data->{'ean'},
     seriestitle      => $data->{'seriestitle'},
     itemtypeloop     => \@itemtypes,
     quantity         => $data->{'quantity'},
@@ -375,7 +381,7 @@ $template->param(
     listprice        => sprintf("%.2f", $data->{'listprice'}||$data->{'price'}||$listprice),
     total            => sprintf("%.2f", ($data->{'ecost'}||0)*($data->{'quantity'}||0) ),
     ecost            => $data->{'ecost'},
-    unitprice        => sprintf("%.2f", $data->{'unitprice'}),
+    unitprice        => sprintf("%.2f", $data->{'unitprice'}||0),
     notes            => $data->{'notes'},
     publishercode    => $data->{'publishercode'},
     barcode_subfield => $barcode_subfield,
@@ -385,6 +391,7 @@ $template->param(
 # CHECKME: gst-stuff needs verifing, mason.
     gstrate          => $bookseller->{'gstrate'} // C4::Context->preference("gist") // 0,
     gstreg           => $bookseller->{'gstreg'},
+    (uc(C4::Context->preference("marcflavour"))) => 1
 );
 
 output_html_with_http_headers $input, $cookie, $template->output;
@@ -516,6 +523,7 @@ sub Load_Duplicate {
     booksellerid        => $basket->{'booksellerid'},
     breedingid          => $params->{'breedingid'},
     duplicatetitle      => $duplicatetitle,
+    (uc(C4::Context->preference("marcflavour"))) => 1
   );
 
   output_html_with_http_headers $input, $cookie, $template->output;