Bug 5549 : Koha::Calendar needs to accept scalar add_durations
[koha.git] / acqui / basket.pl
index b836280..7864fee 100755 (executable)
@@ -34,6 +34,8 @@ use C4::Debug;
 use C4::Biblio;
 use C4::Members qw/GetMember/;  #needed for permissions checking for changing basketgroup of a basket
 use C4::Items;
+use C4::Suggestions;
+
 =head1 NAME
 
 basket.pl
@@ -52,7 +54,7 @@ basket.pl
 
 The basket number.
 
-=item supplierid
+=item booksellerid
 
 the supplier this script have to display the basket.
 
@@ -64,7 +66,7 @@ the supplier this script have to display the basket.
 
 my $query        = new CGI;
 my $basketno     = $query->param('basketno');
-my $booksellerid = $query->param('supplierid');
+my $booksellerid = $query->param('booksellerid');
 
 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
     {
@@ -80,7 +82,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 my $basket = GetBasket($basketno);
 
 # FIXME : what about the "discount" percentage?
-# FIXME : the query->param('supplierid') below is probably useless. The bookseller is always known from the basket
+# FIXME : the query->param('booksellerid') below is probably useless. The bookseller is always known from the basket
 # if no booksellerid in parameter, get it from basket
 # warn "=>".$basket->{booksellerid};
 $booksellerid = $basket->{booksellerid} unless $booksellerid;
@@ -162,7 +164,7 @@ if ( $op eq 'delete_confirm' ) {
                          basketgroupid => $basketgroupid } );
             print $query->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid='.$booksellerid.'&closed=1');
         } else {
-            print $query->redirect('/cgi-bin/koha/acqui/booksellers.pl?supplierid=' . $booksellerid);
+            print $query->redirect('/cgi-bin/koha/acqui/booksellers.pl?booksellerid=' . $booksellerid);
         }
         exit;
     } else {
@@ -229,14 +231,15 @@ if ( $op eq 'delete_confirm' ) {
        my $gist = $bookseller->{gstrate} // C4::Context->preference("gist") // 0;
        $gist = 0 if $gist == 0.0000;
        my $discount = $bookseller->{'discount'} / 100;
-    my $total_rrp;      # RRP Total, its value will be assigned to $total_rrp_gsti or $total_rrp_gste depending of $bookseller->{'listincgst'}
-       my $total_rrp_gsti; # RRP Total, GST included
-       my $total_rrp_gste; # RRP Total, GST excluded
-       my $gist_rrp;
-       my $total_rrp_est;
-       
+    my $total_rrp = 0;      # RRP Total, its value will be assigned to $total_rrp_gsti or $total_rrp_gste depending of $bookseller->{'listincgst'}
+    my $total_rrp_gsti = 0; # RRP Total, GST included
+    my $total_rrp_gste = 0; # RRP Total, GST excluded
+    my $gist_rrp = 0;
+    my $total_rrp_est = 0;
+
     my $qty_total;
     my @books_loop;
+    my $suggestion;
 
     for my $order ( @results ) {
         my $rrp = $order->{'listprice'} || 0;
@@ -281,7 +284,7 @@ if ( $op eq 'delete_confirm' ) {
         $line{biblios}              = $countbiblio - 1;
         $line{left_subscription}    = 1 if scalar @subscriptions >= 1;
         $line{subscriptions}        = scalar @subscriptions;
-        $line{left_holds}           = 1 if $holds >= 1;
+        ($holds >= 1) ? $line{left_holds} = 1 : $line{left_holds} = 0;
         $line{left_holds_on_order}  = 1 if $line{left_holds}==1 && ($line{items} == 0 || $itemholds );
         $line{holds}                = $holds;
         $line{holds_on_order}       = $itemholds?$itemholds:$holds if $line{left_holds_on_order};
@@ -303,6 +306,12 @@ if ( $op eq 'delete_confirm' ) {
        } else {
            $line{'title'} = "Deleted bibliographic notice, can't find title.";
        }
+
+        $suggestion = GetSuggestionInfoFromBiblionumber($line{biblionumber});
+        $line{suggestionid}         = $suggestion->{suggestionid};
+        $line{surnamesuggestedby}   = $suggestion->{surnamesuggestedby};
+        $line{firstnamesuggestedby} = $suggestion->{firstnamesuggestedby};
+
         push @books_loop, \%line;
     }
 
@@ -343,6 +352,11 @@ my $total_est_gste;
         last;
     }
 
+    my @cancelledorders = GetCancelledOrders($basketno);
+    foreach (@cancelledorders) {
+        $_->{'line_total'} = sprintf("%.2f", $_->{'ecost'} * $_->{'quantity'});
+    }
+
     $template->param(
         basketno             => $basketno,
         basketname           => $basket->{'basketname'},
@@ -359,6 +373,7 @@ my $total_est_gste;
         name                 => $bookseller->{'name'},
         entrydate            => C4::Dates->new($results[0]->{'entrydate'},'iso')->output,
         books_loop           => \@books_loop,
+        cancelledorders_loop => \@cancelledorders,
         gist_rate            => sprintf( "%.2f", $gist * 100 ) . '%',
         total_rrp_gste       => sprintf( "%.2f", $total_rrp_gste ),
         total_est_gste       => sprintf( "%.2f", $total_est_gste ),