X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fchange_pkg.cgi;h=323784554c8eae3ed3f4db2905049da509e9d2a9;hb=5f2c3a88d92952d13a5231a230e332e1a8e94016;hp=2ab9329a17ccd40daef36102d4a8dd39777d77e3;hpb=fb4ab1073f0d15d660c6cdc4e07afebf68ef3924;p=freeside.git diff --git a/httemplate/misc/change_pkg.cgi b/httemplate/misc/change_pkg.cgi index 2ab9329a1..323784554 100755 --- a/httemplate/misc/change_pkg.cgi +++ b/httemplate/misc/change_pkg.cgi @@ -1,48 +1,124 @@ -<& /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> <& /elements/tr-select-cust-part_pkg.html, 'pre_label' => emt('New'), - 'curr_value' => scalar($cgi->param('pkgpart')), + 'curr_value' => scalar($cgi->param('pkgpart')) || $cust_pkg->pkgpart, 'classnum' => $part_pkg->classnum, 'cust_main' => $cust_main, &> + <& /elements/tr-input-pkg-quantity.html, + 'curr_value' => scalar($cgi->param('quantity')) || $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> + +<& /elements/table-cust_pkg_usageprice.html, + 'pkgpart' => (scalar($cgi->param('pkgpart')) || $cust_pkg->pkgpart), + 'pkgnum' => ($cust_pkg->change_to_pkgnum || $pkgnum), +&> + +<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'); + if (document.getElementById('start_date_button_disabled')) { // does this ever exist anymore? + document.getElementById('start_date_button_disabled').style.display = + (enable ? 'none' : ''); + } + if (enable) { + usageprice_disable(1); + } else { + var form = document.OrderPkgForm; + usageprice_disable(0,form.pkgpart.options[form.pkgpart.selectedIndex].value); + } + } + <&| /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> + +% my $discount_cust_pkg = $curuser->access_right('Discount customer package'); +% my $waive_setup_fee = $curuser->access_right('Waive setup fee'); +% +% if ( $discount_cust_pkg || $waive_setup_fee ) { + <FONT CLASS="fsinnerbox-title"><% mt('Discounting') |h %></FONT> + <% ntable("#cccccc") %> + <& /elements/tr-select-pkg-discount.html, disable_recur => 1, &> + </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 = "<% mt("Change package") |h %>" onClick = "this.disabled=true; standardize_new_location();" - <% scalar($cgi->param('pkgpart')) ? '' : 'DISABLED' %> + <% #scalar($cgi->param('pkgpart')) ? '' : 'DISABLED' %> > </FORM> @@ -76,4 +152,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>