enable CardFortress in test database, #71513
[freeside.git] / httemplate / edit / cust_pkg_discount.html
1 <& /elements/header-popup.html, "Discount Package" &>
2 <& /elements/error.html &>
3
4 <FORM NAME="DiscountPkgForm" ACTION="<% $p %>edit/process/cust_pkg_discount.html" METHOD=POST>
5 <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">
6
7 <% ntable('#cccccc') %>
8
9   <TR>
10     <TH ALIGN="right">Current package&nbsp;</TH>
11     <TD COLSPAN=7>
12       <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B> - <% $part_pkg->comment |h %>
13     </TD>
14   </TR>
15
16 <& /elements/tr-select-pkg-discount.html,
17   curr_value_setup  => $setup_discountnum,
18   curr_value_recur  => $recur_discountnum,
19   disable_setup     => $disable_setup,
20   disable_recur     => $disable_recur,
21 &>
22   
23 </TABLE>
24
25 <BR>
26 <INPUT NAME="submit" TYPE="submit" VALUE="Discount package">
27
28 </FORM>
29 </BODY>
30 </HTML>
31
32 <%init>
33
34 my $conf = new FS::Conf;
35
36 my $curuser = $FS::CurrentUser::CurrentUser;
37
38 die "access denied"
39   unless $curuser->access_right([ 'Discount customer package',
40                                   'Waive setup fee']);
41
42 my $pkgnum = scalar($cgi->param('pkgnum'));
43 $pkgnum =~ /^(\d+)$/ or die "illegal pkgnum $pkgnum";
44 $pkgnum = $1;
45
46 my $pkgdiscountnum = '';
47
48 my $cust_pkg =
49   qsearchs({
50     'table'     => 'cust_pkg',
51     'addl_from' => 'LEFT JOIN cust_main USING ( custnum )',
52     'hashref'   => { 'pkgnum' => $pkgnum },
53     'extra_sql' => ' AND '. $curuser->agentnums_sql,
54   }) or die "unknown pkgnum $pkgnum";
55
56 my $part_pkg = $cust_pkg->part_pkg;
57
58 my @discounts = $cust_pkg->cust_pkg_discount_active;
59 my ($setup_discountnum, $recur_discountnum);
60 foreach (@discounts) {
61   if ( $_->setuprecur eq 'setup') {
62     die "multiple setup discounts on pkg#$pkgnum" if $setup_discountnum;
63     $setup_discountnum = $_->discountnum;
64   } elsif ( $_->setuprecur eq 'recur' ) {
65     die "multiple setup discounts on pkg#$pkgnum" if $recur_discountnum;
66     $recur_discountnum = $_->discountnum;
67   }
68 }
69 if ( $cust_pkg->waive_setup ) {
70   $setup_discountnum = -2;
71 }
72
73 my $disable_setup = 1;
74 if ( !$cust_pkg->get('setup') and $cust_pkg->base_setup > 0 ) {
75   $disable_setup = 0;
76 }
77 my $disable_recur = 1;
78 if ( $cust_pkg->base_recur > 0 ) {
79   $disable_recur = 0;
80 }
81
82 </%init>