summaryrefslogtreecommitdiff
path: root/httemplate/edit/cust_pkg_discount.html
blob: e1e3daedec49ede685cd55b8895ec768b8ec9fae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<& /elements/header-popup.html, "Discount Package" &>
<& /elements/error.html &>

<FORM NAME="DiscountPkgForm" ACTION="<% $p %>edit/process/cust_pkg_discount.html" METHOD=POST>
<INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">

<% ntable('#cccccc') %>

  <TR>
    <TH ALIGN="right">Current package&nbsp;</TH>
    <TD COLSPAN=7>
      <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B> - <% $part_pkg->comment |h %>
    </TD>
  </TR>

<& /elements/tr-select-pkg-discount.html,
  curr_value_setup  => $setup_discountnum,
  curr_value_recur  => $recur_discountnum,
  disable_setup     => $disable_setup,
  disable_recur     => $disable_recur,
&>
  
</TABLE>

<BR>
<INPUT NAME="submit" TYPE="submit" VALUE="Discount package">

</FORM>
</BODY>
</HTML>

<%init>

my $conf = new FS::Conf;

my $curuser = $FS::CurrentUser::CurrentUser;

die "access denied"
  unless $curuser->access_right([ 'Discount customer package',
                                  'Waive setup fee']);

my $pkgnum = scalar($cgi->param('pkgnum'));
$pkgnum =~ /^(\d+)$/ or die "illegal pkgnum $pkgnum";
$pkgnum = $1;

my $pkgdiscountnum = '';

my $cust_pkg =
  qsearchs({
    'table'     => 'cust_pkg',
    'addl_from' => 'LEFT JOIN cust_main USING ( custnum )',
    'hashref'   => { 'pkgnum' => $pkgnum },
    'extra_sql' => ' AND '. $curuser->agentnums_sql,
  }) or die "unknown pkgnum $pkgnum";

my $part_pkg = $cust_pkg->part_pkg;

my @discounts = $cust_pkg->cust_pkg_discount_active;
my ($setup_discountnum, $recur_discountnum);
foreach (@discounts) {
  if ( $_->setuprecur eq 'setup') {
    die "multiple setup discounts on pkg#$pkgnum" if $setup_discountnum;
    $setup_discountnum = $_->discountnum;
  } elsif ( $_->setuprecur eq 'recur' ) {
    die "multiple setup discounts on pkg#$pkgnum" if $recur_discountnum;
    $recur_discountnum = $_->discountnum;
  }
}
if ( $cust_pkg->waive_setup ) {
  $setup_discountnum = -2;
}

my $disable_setup = 1;
if ( !$cust_pkg->get('setup') and $cust_pkg->base_setup > 0 ) {
  $disable_setup = 0;
}
my $disable_recur = 1;
if ( $cust_pkg->base_recur > 0 ) {
  $disable_recur = 0;
}

</%init>