X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fchange_pkg.cgi;h=e74747e8210f2d4c3868ef675379cd7156a8c3b3;hb=a3696f50ea05e5b8f87c24c5298fc35bee03fc75;hp=01b283d7a4365739643968d333df2a508ae439e0;hpb=8ef00c68688492b2afa3dde8d3d467f89f238c40;p=freeside.git diff --git a/httemplate/misc/change_pkg.cgi b/httemplate/misc/change_pkg.cgi index 01b283d7a..e74747e82 100755 --- a/httemplate/misc/change_pkg.cgi +++ b/httemplate/misc/change_pkg.cgi @@ -1,18 +1,19 @@ -<& /elements/header-popup.html, mt("Change Package") &> +<& /elements/header-popup.html, mt($title) &> <SCRIPT TYPE="text/javascript" SRC="../elements/order_pkg.js"></SCRIPT> - <& /elements/error.html &> <FORM NAME="OrderPkgForm" ACTION="<% $p %>edit/process/change-cust_pkg.html" METHOD=POST> <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>"> + +<FONT CLASS="fsinnerbox-title"><% mt('Package') |h %></FONT> <% ntable('#cccccc') %> <TR> <TH ALIGN="right"><% mt('Current package') |h %></TH> <TD COLSPAN=7> - <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B> - <% $part_pkg->comment |h %> + <FONT STYLE="background-color:#e8e8e8"><% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><B><% $part_pkg->pkg |h %></B> - <% $part_pkg->comment |h %></FONT> </TD> </TR> @@ -23,24 +24,77 @@ 'cust_main' => $cust_main, &> + <& /elements/tr-input-pkg-quantity.html, + 'curr_value' => $cust_pkg->quantity + &> + +% if ($use_contract_end) { + <& /elements/tr-input-date-field.html, { + 'name' => 'contract_end', + 'value' => ($cgi->param('contract_end') || $cust_pkg->get('contract_end')), + 'label' => '<B>Contract End</B>', + } &> +% } + +</TABLE> +<BR> + + +<FONT CLASS="fsinnerbox-title"><% mt('Change') |h %></FONT> +<% ntable('#cccccc') %> + + <SCRIPT TYPE="text/javascript"> + function delay_changed() { + var enable = document.OrderPkgForm.delay[1].checked; + document.getElementById('start_date_text').disabled = !enable; + document.getElementById('start_date_button').style.display = + (enable ? '' : 'none'); + document.getElementById('start_date_button_disabled').style.display = + (enable ? 'none' : ''); + } + <&| /elements/onload.js &> + delay_changed(); + </&> + </SCRIPT> + <TR> + <TD> <INPUT TYPE="radio" NAME="delay" VALUE="0" \ + <% !$cgi->param('delay') ? 'CHECKED' : '' %> \ + onclick="delay_changed()"> Now </TD> + <TD> <INPUT TYPE="radio" NAME="delay" VALUE="1" \ + <% $cgi->param('delay') ? 'CHECKED' : '' %> \ + onclick="delay_changed()"> In the future + <& /elements/input-date-field.html, { + 'name' => 'start_date', + 'value' => ($cgi->param('start_date') || $cust_main->next_bill_date), + } &> + </TD> + </TR> +</TABLE> +</BR> + + +<FONT CLASS="fsinnerbox-title"><% mt('Location') |h %></FONT> +<% ntable('#cccccc') %> + <& /elements/tr-select-cust_location.html, 'cgi' => $cgi, 'cust_main' => $cust_main, &> </TABLE> +<BR> + <& /elements/standardize_locations.html, - 'form' => "OrderPkgForm", - 'onlyship' => 1, - 'no_company' => 1, - 'callback' => 'document.OrderPkgForm.submit();', + 'form' => "OrderPkgForm", + 'with_census' => 1, + 'with_census_functions' => 1, + 'callback' => 'document.OrderPkgForm.submit()', &> -<BR> <INPUT NAME = "submitButton" TYPE = "button" - VALUE = "Change package" + VALUE = "<% mt("Change package") |h %>" onClick = "this.disabled=true; standardize_new_location();" <% scalar($cgi->param('pkgpart')) ? '' : 'DISABLED' %> > @@ -76,4 +130,20 @@ my $cust_main = $cust_pkg->cust_main my $part_pkg = $cust_pkg->part_pkg; +my $title = "Change Package"; + +my $use_contract_end = $cust_pkg->get('contract_end') ? 1 : 0; + +# if there's already a package change ordered, preload it +if ( $cust_pkg->change_to_pkgnum ) { + my $change_to = FS::cust_pkg->by_key($cust_pkg->change_to_pkgnum); + $cgi->param('delay', 1); + foreach(qw( start_date pkgpart locationnum quantity )) { + $cgi->param($_, $change_to->get($_)); + } + if ($use_contract_end) { + $cgi->param('contract_end', $change_to->get('contract_end')); + } + $title = "Edit Scheduled Package Change"; +} </%init>