View | Details | Raw Unified | Return to bug 7303
Collapse All | Expand All

(-)a/admin/aqbudgetperiods.pl (-12 / +18 lines)
Lines 69-76 my $budget_period_id = $input->param('budget_period_id'); Link Here
69
my $op                   = $input->param('op')||"else";
69
my $op                   = $input->param('op')||"else";
70
70
71
my $budget_period_hashref= $input->Vars;
71
my $budget_period_hashref= $input->Vars;
72
#my $sort1_authcat = $input->param('sort1_authcat');
72
73
#my $sort2_authcat = $input->param('sort2_authcat');
73
my $sql_error;
74
74
75
my $pagesize    = 20;
75
my $pagesize    = 20;
76
$searchfield =~ s/\,//g;
76
$searchfield =~ s/\,//g;
Lines 140-154 if ( $op eq 'add_form' ) { Link Here
140
elsif ( $op eq 'add_validate' ) {
140
elsif ( $op eq 'add_validate' ) {
141
## add or modify a budget period (confirmation)
141
## add or modify a budget period (confirmation)
142
142
143
	## update budget period data
143
    ## update budget period data
144
	if ( $budget_period_id ne '' ) {
144
    my $r;
145
		$$budget_period_hashref{$_}||=0 for qw(budget_period_active budget_period_locked);
145
    if ( $budget_period_id ne '' ) {
146
		my $status=ModBudgetPeriod($budget_period_hashref);
146
        $$budget_period_hashref{$_}||=0 for qw(budget_period_active budget_period_locked);
147
	} 
147
        $r = ModBudgetPeriod($budget_period_hashref);
148
	else {    # ELSE ITS AN ADD
148
    } 
149
		my $budget_period_id=AddBudgetPeriod($budget_period_hashref);
149
    else {    # ELSE ITS AN ADD
150
	}
150
        $r = AddBudgetPeriod($budget_period_hashref);
151
	$op='else';
151
    }
152
153
    $sql_error = 1 unless $r;
154
    $op='else';
152
}
155
}
153
156
154
#--------------------------------------------------
157
#--------------------------------------------------
Lines 267-271 elsif ( $op eq 'duplicate_budget' ){ Link Here
267
		pagination_bar		  => pagination_bar("aqbudgetperiods.pl",getnbpages(scalar(@$results),$pagesize),$page),
270
		pagination_bar		  => pagination_bar("aqbudgetperiods.pl",getnbpages(scalar(@$results),$pagesize),$page),
268
    );
271
    );
269
272
270
$template->param($op=>1);
273
$template->param(
274
    $op => 1,
275
    sql_error => $sql_error,
276
);
271
output_html_with_http_headers $input, $cookie, $template->output;
277
output_html_with_http_headers $input, $cookie, $template->output;
(-)a/admin/aqbudgets.pl (-2 / +6 lines)
Lines 40-45 use C4::Debug; Link Here
40
40
41
my $input = new CGI;
41
my $input = new CGI;
42
my $dbh     = C4::Context->dbh;
42
my $dbh     = C4::Context->dbh;
43
my $sql_error;
43
44
44
my ($template, $borrowernumber, $cookie, $staffflags ) = get_template_and_user(
45
my ($template, $borrowernumber, $cookie, $staffflags ) = get_template_and_user(
45
    {   template_name   => "admin/aqbudgets.tmpl",
46
    {   template_name   => "admin/aqbudgets.tmpl",
Lines 217-227 if ($op eq 'add_form') { Link Here
217
    if ( $op eq 'delete_confirmed' ) {
218
    if ( $op eq 'delete_confirmed' ) {
218
        my $rc = DelBudget($budget_id);
219
        my $rc = DelBudget($budget_id);
219
    }elsif( $op eq 'add_validate' ) {
220
    }elsif( $op eq 'add_validate' ) {
221
        my $r;
220
        if ( defined $$budget_hash{budget_id} ) {
222
        if ( defined $$budget_hash{budget_id} ) {
221
            ModBudget( $budget_hash );
223
            $r = ModBudget( $budget_hash );
222
        } else {
224
        } else {
223
            AddBudget( $budget_hash );
225
            $r = AddBudget( $budget_hash );
224
        }
226
        }
227
        $sql_error = 1 unless $r;
225
    }
228
    }
226
    my $branches = GetBranches();
229
    my $branches = GetBranches();
227
    $template->param(
230
    $template->param(
Lines 332-337 if ($op eq 'add_form') { Link Here
332
        period_alloc_total     => $num->format_price($period_alloc_total),
335
        period_alloc_total     => $num->format_price($period_alloc_total),
333
        base_spent_total       => $num->format_price($base_spent_total),
336
        base_spent_total       => $num->format_price($base_spent_total),
334
        branchloop             => \@branchloop2,
337
        branchloop             => \@branchloop2,
338
        sql_error              => $sql_error,
335
    );
339
    );
336
340
337
} #---- END $OP eq DEFAULT
341
} #---- END $OP eq DEFAULT
(-)a/installer/data/mysql/kohastructure.sql (-5 / +8 lines)
Lines 2510-2517 DROP TABLE IF EXISTS `aqbudgets`; Link Here
2510
CREATE TABLE `aqbudgets` (
2510
CREATE TABLE `aqbudgets` (
2511
  `budget_id` int(11) NOT NULL auto_increment,
2511
  `budget_id` int(11) NOT NULL auto_increment,
2512
  `budget_parent_id` int(11) default NULL,
2512
  `budget_parent_id` int(11) default NULL,
2513
  `budget_code` varchar(30) default NULL,
2513
  `budget_code` varchar(30) NOT NULL,
2514
  `budget_name` varchar(80) default NULL,
2514
  `budget_name` varchar(80) NOT NULL,
2515
  `budget_branchcode` varchar(10) default NULL,
2515
  `budget_branchcode` varchar(10) default NULL,
2516
  `budget_amount` decimal(28,6) NULL default '0.00',
2516
  `budget_amount` decimal(28,6) NULL default '0.00',
2517
  `budget_encumb` decimal(28,6) NULL default '0.00',
2517
  `budget_encumb` decimal(28,6) NULL default '0.00',
Lines 2523-2529 CREATE TABLE `aqbudgets` ( Link Here
2523
  `sort2_authcat` varchar(80) default NULL,
2523
  `sort2_authcat` varchar(80) default NULL,
2524
  `budget_owner_id` int(11) default NULL,
2524
  `budget_owner_id` int(11) default NULL,
2525
  `budget_permission` int(1) default '0',
2525
  `budget_permission` int(1) default '0',
2526
  PRIMARY KEY  (`budget_id`)
2526
  PRIMARY KEY  (`budget_id`),
2527
  UNIQUE KEY `uniq_budget_name_aqbudgets` (`budget_name`),
2528
  UNIQUE KEY `uniq_budget_code_aqbudgets` (`budget_code`
2527
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2529
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2528
2530
2529
2531
Lines 2538-2549 CREATE TABLE `aqbudgetperiods` ( Link Here
2538
  `budget_period_startdate` date NOT NULL,
2540
  `budget_period_startdate` date NOT NULL,
2539
  `budget_period_enddate` date NOT NULL,
2541
  `budget_period_enddate` date NOT NULL,
2540
  `budget_period_active` tinyint(1) default '0',
2542
  `budget_period_active` tinyint(1) default '0',
2541
  `budget_period_description` mediumtext,
2543
  `budget_period_description` varchar(255) NOT NULL,
2542
  `budget_period_total` decimal(28,6),
2544
  `budget_period_total` decimal(28,6),
2543
  `budget_period_locked` tinyint(1) default NULL,
2545
  `budget_period_locked` tinyint(1) default NULL,
2544
  `sort1_authcat` varchar(10) default NULL,
2546
  `sort1_authcat` varchar(10) default NULL,
2545
  `sort2_authcat` varchar(10) default NULL,
2547
  `sort2_authcat` varchar(10) default NULL,
2546
  PRIMARY KEY  (`budget_period_id`)
2548
  PRIMARY KEY  (`budget_period_id`),
2549
  UNIQUE KEY `uniq_aqbudgetperiods` (`budget_period_description`)
2547
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2550
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2548
2551
2549
--
2552
--
(-)a/installer/data/mysql/updatedatabase.pl (+25 lines)
Lines 4684-4689 if (C4::Context->preference("Version") < TransformToNum($DBversion)) { Link Here
4684
    SetVersion($DBversion);
4684
    SetVersion($DBversion);
4685
}
4685
}
4686
4686
4687
$DBversion = "3.07.00.XXX";
4688
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
4689
    $dbh->do(q{
4690
        ALTER TABLE `aqbudgetperiods` MODIFY COLUMN `budget_period_description` VARCHAR(255)  CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
4691
    });
4692
    $dbh->do(q{
4693
        ALTER TABLE `aqbudgetperiods` ADD UNIQUE ( budget_period_description);
4694
    });
4695
    $dbh->do(q{
4696
        ALTER TABLE `aqbudgets` MODIFY COLUMN `budget_name` VARCHAR(80)  CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
4697
    });
4698
    $dbh->do(q{
4699
        ALTER TABLE `aqbudgets` MODIFY COLUMN `budget_code` VARCHAR(30)  CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
4700
    });
4701
    $dbh->do(q{
4702
        ALTER TABLE `aqbudgets` ADD UNIQUE ( budget_name );
4703
    });
4704
    $dbh->do(q{
4705
        ALTER TABLE `aqbudgets` ADD UNIQUE ( budget_code );
4706
    });
4707
4708
    print "Upgrade to $DBversion done (aqbudgets and aqbudgetperiods. Unique constraint on field.)\n";
4709
    SetVersion ($DBversion);
4710
}
4711
4687
=head1 FUNCTIONS
4712
=head1 FUNCTIONS
4688
4713
4689
=head2 DropAllForeignKeys($table)
4714
=head2 DropAllForeignKeys($table)
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tt (+6 lines)
Lines 149-154 Link Here
149
<div id="yui-main">
149
<div id="yui-main">
150
<div class="yui-b">
150
<div class="yui-b">
151
151
152
[% IF ( sql_error ) %]
153
    <div class="error">
154
        This budget name already exists
155
    </div>
156
[% END %]
157
152
[% INCLUDE 'budgets-admin-toolbar.inc' %]
158
[% INCLUDE 'budgets-admin-toolbar.inc' %]
153
159
154
[% IF ( duplicate_form ) %]
160
[% IF ( duplicate_form ) %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tt (-1 / +6 lines)
Lines 155-160 Link Here
155
<div id="yui-main">
155
<div id="yui-main">
156
<div class="yui-b" id="content">
156
<div class="yui-b" id="content">
157
157
158
[% IF ( sql_error ) %]
159
    <div class="error">
160
        This fund name (or code) already exists
161
    </div>
162
[% END %]
163
158
[% UNLESS ( delete_confirm ) %][% INCLUDE 'budgets-admin-toolbar.inc' %][% END %]
164
[% UNLESS ( delete_confirm ) %][% INCLUDE 'budgets-admin-toolbar.inc' %][% END %]
159
[% IF ( else ) %]
165
[% IF ( else ) %]
160
166
161
- 

Return to bug 7303