X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fmisc%2Fchange_pkg.cgi;h=e3ef4b7a85ed6bffd60194ed3ebde527151f9aec;hp=16b7071214473b5c8f77a2135221c6fd50284d31;hb=ff27c3f36240aee48ed50153dd5d8fe3ac3f2443;hpb=63a268637b2d51a8766412617724b9436439deb6 diff --git a/httemplate/misc/change_pkg.cgi b/httemplate/misc/change_pkg.cgi index 16b707121..e3ef4b7a8 100755 --- a/httemplate/misc/change_pkg.cgi +++ b/httemplate/misc/change_pkg.cgi @@ -1,38 +1,115 @@ -<% include('/elements/header-popup.html', "Change Package") %> +<& /elements/header-popup.html, mt($title) &> -<% include('/elements/error.html') %> + +<& /elements/error.html &> -
+ + +<% mt('Package') |h %> <% ntable('#cccccc') %> - Current package + <% mt('Current package') |h %> - <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> - <% $part_pkg->comment |h %> + <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> - <% $part_pkg->comment |h %> - <% include('/elements/tr-select-cust-part_pkg.html', - 'pre_label' => 'New', - 'curr_value' => scalar($cgi->param('pkgpart')), + <& /elements/tr-select-cust-part_pkg.html, + 'pre_label' => emt('New'), + 'curr_value' => scalar($cgi->param('pkgpart')) || $cust_pkg->pkgpart, 'classnum' => $part_pkg->classnum, 'cust_main' => $cust_main, - #'extra_sql' => ' AND pkgpart != '. $cust_pkg->pkgpart, - ) - %> + &> + + <& /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' => 'Contract End', + } &> +% } + + +
- <% include('/elements/tr-select-cust_location.html', +<& /elements/table-cust_pkg_usageprice.html, + 'pkgpart' => (scalar($cgi->param('pkgpart')) || $cust_pkg->pkgpart), + 'pkgnum' => ($cust_pkg->change_to_pkgnum || $pkgnum), +&> + +<% mt('Change') |h %> +<% ntable('#cccccc') %> + + + + param('delay') ? 'CHECKED' : '' %> \ + onclick="delay_changed()"> Now + 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), + } &> + + + +
+ + +<% mt('Location') |h %> +<% ntable('#cccccc') %> + + <& /elements/tr-select-cust_location.html, 'cgi' => $cgi, 'cust_main' => $cust_main, - ) - %> + &> -
- + + +<& /elements/standardize_locations.html, + 'form' => "OrderPkgForm", + 'with_census' => 1, + 'with_census_functions' => 1, + 'callback' => 'document.OrderPkgForm.submit()', +&> + +" + onClick = "this.disabled=true; standardize_new_location();" + <% #scalar($cgi->param('pkgpart')) ? '' : 'DISABLED' %> +>
@@ -65,4 +142,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"; +}