985472142041e32aa81fccd861871cd6f500340d
[freeside.git] / httemplate / misc / order_pkg.html
1 <& /elements/header-popup.html, mt('Order new package') &>
2
3 <LINK REL="stylesheet" TYPE="text/css" HREF="../elements/calendar-win2k-2.css" TITLE="win2k-2">
4 <SCRIPT TYPE="text/javascript" SRC="../elements/calendar_stripped.js"></SCRIPT>
5 <SCRIPT TYPE="text/javascript" SRC="../elements/calendar-en.js"></SCRIPT>
6 <SCRIPT TYPE="text/javascript" SRC="../elements/calendar-setup.js"></SCRIPT>
7
8 <SCRIPT TYPE="text/javascript" SRC="../elements/order_pkg.js"></SCRIPT>
9
10 <& /elements/error.html &>
11
12 <FORM NAME="OrderPkgForm" ACTION="<% $p %>edit/process/quick-cust_pkg.cgi" METHOD="POST">
13
14 <INPUT TYPE="hidden" NAME="custnum" VALUE="<% $cust_main->custnum %>">
15 <INPUT TYPE="hidden" NAME="qualnum" VALUE="<% scalar($cgi->param('qualnum')) |h %>">
16 % if ( $svcpart ) {
17     <INPUT TYPE="hidden" NAME="svcpart" VALUE="<% $svcpart %>">
18 % }
19
20 <% ntable("#cccccc", 2) %>
21 % if ( $part_pkg ) {
22     <INPUT TYPE="hidden" NAME="pkgpart" VALUE="<% $part_pkg->pkgpart %>">
23     <TR>
24       <TH ALIGN="right"><% mt('Package') |h %></TH>
25       <TD COLSPAN=6><% $part_pkg->pkg_comment |h %></TD>
26     </TR>
27 % } else {
28     <& /elements/tr-select-cust-part_pkg.html,
29                  'curr_value' => $pkgpart,
30                  'classnum'   => -1,
31                  'cust_main'  => $cust_main,
32                  'onchange'   => 'enable_order_pkg',
33     &>
34 % }
35
36 <TR>
37   <TH ALIGN="right"><% mt('Start date') |h %> </TD>
38   <TD COLSPAN=6>
39     <& /elements/input-date-field.html,{
40                 'name'      => 'start_date',
41                 'format'    => $date_format,
42                 'value'     => $start_date,
43                 'noinit'    => 1,
44               } &>
45     <FONT SIZE=-1>(<% mt('leave blank to start immediately') |h %>)</FONT>
46   </TD>
47 </TR>
48
49 % if ( $cust_main->payby =~ /^(CARD|CHEK)$/ ) {
50 %   my $what = lc(FS::payby->shortname($cust_main->payby));
51     <TR>
52       <TH ALIGN="right"><% mt("Disable automatic $what charge") |h %> </TH>
53       <TD COLSPAN=6><INPUT TYPE="checkbox" NAME="no_auto" VALUE="Y"></TD>
54     </TR>
55 % }
56
57 % if ( $curuser->access_right('Discount customer package') ) {
58   <& /elements/tr-select-discount.html,
59                'element_etc' => 'DISABLED',
60                'colspan'     => 7,
61                'cgi'         => $cgi,
62   &>
63 % }
64
65 % if ( $curuser->access_right('Waive setup fee') ) {
66     <TR>
67       <TH ALIGN="right"><% mt('Waive setup fee') |h %> </TH>
68       <TD COLSPAN=6><INPUT TYPE="checkbox" NAME="waive_setup" VALUE="Y"></TD>
69     </TR>
70 % }
71
72 % if ( $conf->exists('pkg_referral') ) {
73   <& /elements/tr-select-part_referral.html,
74                'curr_value'    => scalar( $cgi->param('refnum') ), #get rid of empty_label first# || $cust_main->refnum,
75                'disable_empty' => 1,
76                'multiple'      => $conf->exists('pkg_referral-multiple'),
77                'colspan'       => 7,
78   &>
79 % }
80
81 % if ( $cgi->param('lock_locationnum') ) {
82
83     <INPUT TYPE  = "hidden"
84            NAME  = "locationnum"
85            ID    = "locationnum"
86            VALUE = "<% scalar($cgi->param('lock_locationnum')) |h %>"
87     >
88
89 % } else {
90
91     <& /elements/tr-select-cust_location.html,
92                  'cgi'       => $cgi,
93                  'cust_main' => $cust_main,
94     &>
95
96 % }
97
98 <TR>
99   <TH ALIGN="right"><% mt('Contract end date') |h %> </TD>
100   <TD COLSPAN=6>
101     <& /elements/input-date-field.html,{
102                 'name'      => 'contract_end',
103                 'format'    => $date_format,
104                 'value'     => '',
105                 'noinit'    => 1,
106                 } &>
107   </TD>
108 </TR>
109
110 </TABLE>
111
112 % unless ( $cgi->param('lock_locationnum') ) {
113
114   <& /elements/standardize_locations.html,
115                 'form'       => "OrderPkgForm",
116                 'onlyship'   => 1,
117                 'no_company' => 1,
118                 'callback'   => 'document.OrderPkgForm.submit();',
119   &>
120
121 % }
122
123 <BR>
124 % my $onclick = $cgi->param('lock_locationnum')
125 %                 ? 'document.OrderPkgForm.submit()'
126 %                 : 'standardize_new_location()';
127 <INPUT NAME    = "submitButton"
128        TYPE    = "button"
129        VALUE   = "Order Package"
130        onClick = "this.disabled=true; <% $onclick %>;"
131        <% $pkgpart ? '' : 'DISABLED' %>
132 >
133
134 </FORM>
135 </BODY>
136 </HTML>
137 <%init>
138
139 my $curuser = $FS::CurrentUser::CurrentUser;
140
141 die "access denied"
142   unless $curuser->access_right('Order customer package');
143
144 my $conf = new FS::Conf;
145 my $date_format = $conf->config('date_format') || '%m/%d/%Y';
146
147 $cgi->param('custnum') =~ /^(\d+)$/ or die "no custnum";
148 my $custnum = $1;
149 my $cust_main = qsearchs({
150   'table'     => 'cust_main',
151   'hashref'   => { 'custnum' => $custnum },
152   'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
153 });
154
155 my $part_pkg = '';
156 if ( $cgi->param('lock_pkgpart') ) {
157   $part_pkg = qsearchs({
158     'table'     => 'part_pkg',
159     'hashref'   => { 'pkgpart' => scalar($cgi->param('lock_pkgpart')) },
160     'extra_sql' => ' AND '. FS::part_pkg->agent_pkgs_sql( $cust_main->agent ),
161   })
162     or die "unknown pkgpart ". $cgi->param('lock_pkgpart');
163 }
164
165 my $pkgpart = $part_pkg ? $part_pkg->pkgpart : scalar($cgi->param('pkgpart'));
166
167 my $format = $date_format. ' %T %z (%Z)'; #false laziness w/REAL_cust_pkg.cgi?
168 my $start_date = '';
169 if( ! $conf->exists('order_pkg-no_start_date') ) {
170   $start_date = $cust_main->next_bill_date;
171   $start_date = $start_date ? time2str($format, $start_date) : '';
172 }
173
174 my $svcpart = scalar($cgi->param('svcpart'));
175
176 </%init>