<& /elements/header-popup.html, mt($title) &> <& /elements/error.html &>
<% mt('Package') |h %> <% ntable('#cccccc') %> <% mt('Current package') |h %> <% $curuser->option('show_pkgnum') ? $cust_pkg->pkgnum.': ' : '' %><% $part_pkg->pkg |h %> - <% $part_pkg->comment |h %> <& /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, &> <& /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', } &> % }
<& /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' %> >
<%init> my $conf = new FS::Conf; my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" unless $curuser->access_right('Change customer package'); my $pkgnum = scalar($cgi->param('pkgnum')); $pkgnum =~ /^(\d+)$/ or die "illegal pkgnum $pkgnum"; $pkgnum = $1; 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 $cust_main = $cust_pkg->cust_main or die "can't get cust_main record for custnum ". $cust_pkg->custnum. " ( pkgnum ". cust_pkg->pkgnum. ")"; 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"; }