@@ -, +, @@ --- C4/Budgets.pm | 55 ++++++++++++++++++ .../prog/en/modules/suggestion/suggestion.tt | 59 ++++++++++++++++++++ suggestion/suggestion.pl | 11 ++++ 3 files changed, 125 insertions(+), 0 deletions(-) --- a/C4/Budgets.pm +++ a/C4/Budgets.pm @@ -46,6 +46,10 @@ BEGIN { &GetBudgetPeriod &GetBudgetPeriods + &GetBudgetFirstChild + &GetBudgetParent + &GetBudgetSecondChild + &ModBudgetPeriod &AddBudgetPeriod &DelBudgetPeriod @@ -464,6 +468,57 @@ sub GetBudgetPeriod { } # ------------------------------------------------------------------- +sub GetBudgetFirstChild { + my $dbh = C4::Context->dbh; + my $query = "SELECT * + FROM `aqbudgets` + WHERE budget_parent_id + IN ( + SELECT budget_id FROM `aqbudgets` + JOIN `aqbudgetperiods` ON aqbudgets.budget_period_id = aqbudgetperiods.budget_period_id + WHERE ((`budget_parent_id` IS NULL)AND (`budget_period_active` LIKE 1))) + ORDER BY `aqbudgets`.`budget_parent_id`, budget_name ASC"; + my $sth= $dbh->prepare($query); + $sth->execute(); + my $data = $sth->fetchall_arrayref({}); + return $data; +} +# ------------------------------------------------------------------- +sub GetBudgetParent { + my $dbh = C4::Context->dbh; + my $query = "SELECT * + FROM `aqbudgets` + JOIN `aqbudgetperiods` ON aqbudgets.budget_period_id = aqbudgetperiods.budget_period_id + WHERE ((`budget_parent_id` IS NULL)AND (`budget_period_active` LIKE 1)) + ORDER BY `aqbudgets`.`budget_id`, budget_name ASC"; + my $sth= $dbh->prepare($query); + $sth->execute(); + my $data = $sth->fetchall_arrayref({}); + return $data; +} +# ------------------------------------------------------------------- +sub GetBudgetSecondChild { + my $dbh = C4::Context->dbh; + my $query = "SELECT * + FROM `aqbudgets` + WHERE budget_parent_id + IN ( + SELECT budget_id + FROM `aqbudgets` + WHERE budget_parent_id + IN ( + SELECT budget_id + FROM `aqbudgets` + JOIN `aqbudgetperiods` ON aqbudgets.budget_period_id = aqbudgetperiods.budget_period_id + WHERE ((`budget_parent_id` IS NULL)AND (`budget_period_active` LIKE 1)))) + ORDER BY `aqbudgets`.`budget_parent_id` , budget_name ASC"; + my $sth= $dbh->prepare($query); + $sth->execute(); + my $data = $sth->fetchall_arrayref({}); + return $data; +} +# ------------------------------------------------------------------- + sub DelBudgetPeriod{ my ($budget_period_id) = @_; my $dbh = C4::Context->dbh; --- a/koha-tmpl/intranet-tmpl/prog/en/modules/suggestion/suggestion.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/suggestion/suggestion.tt @@ -87,6 +87,57 @@ $(document).ready(function() { calcNewsuggTotal(); }); [% END %] + + + [% INCLUDE 'header.inc' %] @@ -169,6 +220,14 @@ $(document).ready(function() { calcNewsuggTotal(); }); [% FOREACH budgetsloo IN budgetsloop %] [% IF ( budgetsloo.selected ) %][% ELSE %][% END %][% END %] + +
  • --- a/suggestion/suggestion.pl +++ a/suggestion/suggestion.pl @@ -84,6 +84,10 @@ my $tabcode = $input->param('tabcode'); my $suggestion_ref = $input->Vars; delete $$suggestion_ref{$_} foreach qw( suggestedbyme op displayby tabcode edit_field ); + +$suggestion_ref->{'budgetid'} = $suggestion_ref->{'su_sub_budgetid'}||$suggestion_ref->{'sub_budgetid'}||$suggestion_ref->{'budgetid'}; +delete $$suggestion_ref{$_} foreach qw( suggestedbyme op displayby tabcode edit_field sub_budgetid su_sub_budgetid); + foreach (keys %$suggestion_ref){ delete $$suggestion_ref{$_} if (!$$suggestion_ref{$_} && ($op eq 'else' || $op eq 'change')); } @@ -300,8 +304,15 @@ foreach my $budget ( @{$budgets} ) { ## Please see file perltidy.ERR $budget->{'selected'}=1 if ($$suggestion_ref{'budgetid'} && $budget->{'budget_id'} eq $$suggestion_ref{'budgetid'}) }; +my $bud = GetBudgetParent(); +my $subbud = GetBudgetFirstChild(); +my $susubbud = GetBudgetSecondChild(); $template->param( budgetsloop => $budgets); +$template->param( budgetsloop => $bud ); +$template->param( sub_budgetsloop => $subbud ); +$template->param( su_sub_budgetsloop => $susubbud ); + $template->param( "statusselected_$$suggestion_ref{'STATUS'}" =>1); # get currencies and rates --