@@ -, +, @@ budgets budget_owner_id is an existing borrowernumber): perl -MKoha::Database -e ' my $schema = Koha::Database->schema; my $period = $schema->resultset("Aqbudgetperiod")->create({ budget_period_startdate => "2000-01-01", budget_period_enddate => "2999-12-31" }); $schema->resultset("Aqbudget")->create({ budget_owner_id => 1, budget_period_id => $period->id }) for (1..1000) ' times and keep the average time) --- acqui/acqui-home.pl | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) --- a/acqui/acqui-home.pl +++ a/acqui/acqui-home.pl @@ -76,12 +76,16 @@ my $totordered_active = 0; my $totavail_active = 0; my @budget_loop; +my %patrons = ($loggedinuser => Koha::Patrons->find($loggedinuser)); +my $loggedinpatron = $patrons{$loggedinuser}->unblessed; foreach my $budget ( @{$budget_arr} ) { - next unless (CanUserUseBudget($loggedinuser, $budget, $userflags)); + next unless (CanUserUseBudget($loggedinpatron, $budget, $userflags)); - my $patron = Koha::Patrons->find( $budget->{budget_owner_id} ); - if ( $patron ) { - $budget->{budget_owner} = $patron; + if ( my $borrowernumber = $budget->{budget_owner_id} ) { + unless (exists $patrons{$borrowernumber}) { + $patrons{$borrowernumber} = Koha::Patrons->find($borrowernumber); + } + $budget->{budget_owner} = $patrons{$borrowernumber}; } if ( !defined $budget->{budget_amount} ) { --