Merge remote-tracking branch 'kc/new/enh/bug_4877' into kcmaster
[koha_gimpoz] / acqui / addorderiso2709.pl
index c46263a..46d05dd 100755 (executable)
@@ -24,6 +24,7 @@
 use strict;
 use warnings;
 use CGI;
+use Carp;
 use Number::Format qw(:all);
 
 use C4::Context;
@@ -210,8 +211,20 @@ if ($op eq ""){
         }
         if ($price){
             $orderinfo{'listprice'} = $price;
-            eval "use C4::Acquisition qw/GetBasket/;";
-            eval "use C4::Bookseller qw/GetBookSellerFromId/;";
+            eval {
+               require C4::Acquisition;
+               import C4::Acquisition qw/GetBasket/;
+           };
+           if ($@){
+               croak $@;
+           }
+            eval {
+               require C4::Bookseller;
+               import C4::Bookseller qw/GetBookSellerFromId/;
+           };
+           if ($@){
+               croak $@;
+           }
             my $basket     = GetBasket( $orderinfo{basketno} );
             my $bookseller = GetBookSellerFromId( $basket->{booksellerid} );
             my $gst        = $bookseller->{gstrate} || C4::Context->preference("gist") || 0;
@@ -265,7 +278,7 @@ my $budget = GetBudget($budget_id);
 
 # build budget list
 my $budget_loop = [];
-my $budgets = GetBudgetHierarchy( q{}, $borrower->{branchcode}, $borrower->{borrowernumber} );
+$budgets = GetBudgetHierarchy( q{}, $borrower->{branchcode}, $borrower->{borrowernumber} );
 foreach my $r ( @{$budgets} ) {
     if ( !defined $r->{budget_amount} || $r->{budget_amount} == 0 ) {
         next;
@@ -281,12 +294,12 @@ $template->param( budget_loop    => $budget_loop,);
 my $CGIsort1;
 if ($budget) {    # its a mod ..
     if ( defined $budget->{'sort1_authcat'} ) {    # with custom  Asort* planning values
-        $CGIsort1 = GetAuthvalueDropbox( 'sort1', $budget->{'sort1_authcat'}, $data->{'sort1'} );
+        $CGIsort1 = GetAuthvalueDropbox(  $budget->{'sort1_authcat'}, $data->{'sort1'} );
     }
 } elsif ( scalar(@$budgets) ) {
-    $CGIsort1 = GetAuthvalueDropbox( 'sort1', @$budgets[0]->{'sort1_authcat'}, '' );
+    $CGIsort1 = GetAuthvalueDropbox(  @$budgets[0]->{'sort1_authcat'}, '' );
 } else {
-    $CGIsort1 = GetAuthvalueDropbox( 'sort1', '', '' );
+    $CGIsort1 = GetAuthvalueDropbox(  '', '' );
 }
 
 # if CGIsort is successfully fetched, the use it
@@ -300,12 +313,12 @@ if ($CGIsort1) {
 my $CGIsort2;
 if ($budget) {
     if ( defined $budget->{'sort2_authcat'} ) {
-        $CGIsort2 = GetAuthvalueDropbox( 'sort2', $budget->{'sort2_authcat'}, $data->{'sort2'} );
+        $CGIsort2 = GetAuthvalueDropbox(  $budget->{'sort2_authcat'}, $data->{'sort2'} );
     }
 } elsif ( scalar(@$budgets) ) {
-    $CGIsort2 = GetAuthvalueDropbox( 'sort2', @$budgets[0]->{sort2_authcat}, '' );
+    $CGIsort2 = GetAuthvalueDropbox(  @$budgets[0]->{sort2_authcat}, '' );
 } else {
-    $CGIsort2 = GetAuthvalueDropbox( 'sort2', '', '' );
+    $CGIsort2 = GetAuthvalueDropbox( '', '' );
 }
 
 if ($CGIsort2) {