Bug 4163 Preserve budget value unless changed by user
[koha_fer] / acqui / basket.pl
index 9687b88..eaa6f59 100755 (executable)
@@ -86,6 +86,9 @@ my $basket = GetBasket($basketno);
 $booksellerid = $basket->{booksellerid} unless $booksellerid;
 my ($bookseller) = GetBookSellerFromId($booksellerid);
 my $op = $query->param('op');
+if (!defined $op) {
+    $op = q{};
+}
 
 if ( $op eq 'delete_confirm' ) {
     my $basketno = $query->param('basketno');
@@ -192,7 +195,7 @@ if ( $op eq 'delete_confirm' ) {
     }
 #if the basket is closed,and the user has the permission to edit basketgroups, display a list of basketgroups
     my $basketgroups;
-    my $member = GetMember($loggedinuser, "borrowernumber");
+    my $member = GetMember(borrowernumber => $loggedinuser);
     if ($basket->{closedate} && haspermission({ flagsrequired   => { acquisition => 'group_manage'} })) {
         $basketgroups = GetBasketgroups($basket->{booksellerid});
         for (my $i=0; $i < scalar(@$basketgroups); $i++) {
@@ -231,6 +234,9 @@ if ( $op eq 'delete_confirm' ) {
     for ( my $i = 0 ; $i < $count ; $i++ ) {
         my $rrp = $results[$i]->{'listprice'};
                my $qty = $results[$i]->{'quantity'} || 0;
+        if (!defined $results[$i]->{quantityreceived}) {
+            $results[$i]->{quantityreceived} = 0;
+        }
 
         my $budget = GetBudget(  $results[$i]->{'budget_id'} );
         $rrp = ConvertCurrency( $results[$i]->{'currency'}, $rrp );
@@ -242,7 +248,7 @@ if ( $op eq 'delete_confirm' ) {
         my %line = %{ $results[$i] };
                ($i%2) and $line{toggle} = 1;
 
-        $line{order_received} = ( $qty eq $results[$i]->{'quantityreceived'} );
+        $line{order_received} = ( $qty == $results[$i]->{'quantityreceived'} );
         $line{basketno}       = $basketno;
         $line{i}              = $i;
         $line{budget_name}    = $budget->{budget_name};