Bug 4502: An attempt to make things more sensible.

The reason the budget_period_id was not defined was because in
two cases it was not passed! This patch adds those missing
parameters. And as a result, cuts out the attempt to default the
authcat to '' unless the budget_period_id is defined.

Additionally, the start and end months don't seem to be passed,
so rather than have it blow up, checking them forces the else
case logic.

budget_period_id is the budget id. If you have two budgets,
you can craft a URL to work with budget_period_id matching
those two ids. Anything else should trigger the new error which
was modified to reflect more of what the problem is.

Follow the test plan in comment #6. Feel free to also to attempt
crafting URLs and triggering errors.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Well, works and does not explode any more
No errors

To trigger the new message simply put /cgi-bin/koha/admin/aqplan.pl
on your staff page, an intriguing 'Planning for by Asort1' appears :)

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Mark Tompsett 2015-04-06 19:50:30 -04:00 committed by Tomas Cohen Arazi
parent 0a39123771
commit fea7b9b4d4
2 changed files with 4 additions and 6 deletions

View File

@ -104,10 +104,6 @@ if ( $budget_period_locked == 1 && not defined $show_actual ) {
$authcat = 'Asort1' if not defined $authcat; # defaults to Asort if no authcat given
# If no active budget is defined, budget_period_id is undef
# This is the behavior of GetBudgetPeriod
$authcat = '' unless $budget_period_id;
my $budget_id = $input->param('budget_id');
my $op = $input->param("op");
@ -213,7 +209,7 @@ if ( $authcat =~ m/^Asort/ ) {
$sth->finish;
@authvals = sort { $a <=> $b } @authvals;
}
elsif ( $authcat eq 'MONTHS' ) {
elsif ( $authcat eq 'MONTHS' && $budget_period_startdate && $budget_period_enddate ) {
# build months
my @start_date = UnixDate( $budget_period_startdate, ( '%Y', '%m', '%d' ) );

View File

@ -226,7 +226,7 @@
</form>
[% ELSIF not budget_period_id %]
<div class="dialog alert">No active budget defined. You should define one before continuing.</div>
<div class="dialog alert">That budget is not defined. You should select a defined budget to continue.</div>
[% ELSE %]
<div class="dialog message">No funds to display for this search criteria</div>
[% END %]
@ -237,6 +237,7 @@
<div class="yui-b">
<form method="post" action="/cgi-bin/koha/admin/aqplan.pl">
<input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
<fieldset class="brief">
<h4>Filter</h4>
[% BLOCK planning_types %]
@ -313,6 +314,7 @@
</li>
</ol>
<fieldset class="action"> <input type="submit" value="Submit"/>
<input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
<input type="hidden" name="report_name" value="[% report_name %]" />
<input type="hidden" name="output" value="file" /></fieldset>
<input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />