Bug 8761 Dont inadvertantly use slices
[koha_fer] / acqui / addorderiso2709.pl
index 8d9c0e3..002fbf5 100755 (executable)
@@ -46,14 +46,15 @@ use C4::Branch;         # GetBranches
 use C4::Members;
 
 my $input = new CGI;
-my ($template, $loggedinuser, $cookie) = get_template_and_user({
-                                        template_name => "acqui/addorderiso2709.tmpl",
-                                        query => $input,
-                                        type => "intranet",
-                                        authnotrequired => 0,
-                                        flagsrequired   => { acquisition => 'order_manage' },
-                                        debug => 1,
-                                        });
+my ($template, $loggedinuser, $cookie, $userflags) = get_template_and_user({
+    template_name => "acqui/addorderiso2709.tmpl",
+    query => $input,
+    type => "intranet",
+    authnotrequired => 0,
+    flagsrequired   => { acquisition => 'order_manage' },
+    debug => 1,
+});
+
 my $cgiparams = $input->Vars;
 my $op = $cgiparams->{'op'};
 my $booksellerid  = $input->param('booksellerid');
@@ -202,13 +203,9 @@ if ($op eq ""){
             "notes", $cgiparams->{'notes'}, "budget_id", $cgiparams->{'budget_id'},
             "currency",$cgiparams->{'currency'},
         );
-        # get the price if there is one.
-        # filter by storing only the 1st number
-        # we suppose the currency is correct, as we have no possibilities to get it.
-        my $price= GetMarcPrice($marcrecord, C4::Context->preference('marcflavour'));
-        if ($price){
-            $price = $num->unformat_number($price);
-        }
+
+        my $price = GetMarcPrice($marcrecord, C4::Context->preference('marcflavour'));
+
         if ($price){
             $orderinfo{'listprice'} = $price;
             eval {
@@ -280,8 +277,9 @@ my $budget = GetBudget($budget_id);
 
 # build budget list
 my $budget_loop = [];
-$budgets = GetBudgetHierarchy( q{}, $borrower->{branchcode}, $borrower->{borrowernumber} );
+$budgets = GetBudgetHierarchy;
 foreach my $r ( @{$budgets} ) {
+    next unless (CanUserUseBudget($borrower, $r, $userflags));
     if ( !defined $r->{budget_amount} || $r->{budget_amount} == 0 ) {
         next;
     }