<& /elements/header-popup.html, mt('Order new package') &> <& /elements/error.html &>
% if ( $svcpart ) { % } <% ntable("#cccccc", 2) %> % if ( $part_pkg ) { <% mt('Package') |h %> <% $part_pkg->pkg_comment |h %> % } else { <& /elements/tr-select-cust-part_pkg.html, 'curr_value' => $pkgpart, 'classnum' => -1, 'cust_main' => $cust_main, &> % } <% mt('Start date') |h %> <& /elements/input-date-field.html,{ 'name' => 'start_date', 'format' => $date_format, 'value' => $start_date, 'noinit' => 1, } &> (<% mt('leave blank to start immediately') |h %>) % if ( $cust_main->payby =~ /^(CARD|CHEK)$/ ) { % my $what = lc(FS::payby->shortname($cust_main->payby)); <% mt("Disable automatic $what charge") |h %> % } % if ( $curuser->access_right('Discount customer package') ) { <& /elements/tr-select-discount.html, 'element_etc' => 'DISABLED', 'colspan' => 7, 'cgi' => $cgi, &> % } % if ( $curuser->access_right('Waive setup fee') ) { <% mt('Waive setup fee') |h %> % } % if ( $conf->exists('pkg_referral') ) { <& /elements/tr-select-part_referral.html, 'curr_value' => scalar( $cgi->param('refnum') ), #get rid of empty_label first# || $cust_main->refnum, 'disable_empty' => 1, 'multiple' => $conf->exists('pkg_referral-multiple'), 'colspan' => 7, &> % } % if ( $cgi->param('lock_locationnum') ) { % } else { <& /elements/tr-select-cust_location.html, 'cgi' => $cgi, 'cust_main' => $cust_main, &> % } <% mt('Contract end date') |h %> <& /elements/input-date-field.html,{ 'name' => 'contract_end', 'format' => $date_format, 'value' => '', 'noinit' => 1, } &> % unless ( $cgi->param('lock_locationnum') ) { <& /elements/standardize_locations.html, 'form' => "OrderPkgForm", 'onlyship' => 1, 'no_company' => 1, 'callback' => 'document.OrderPkgForm.submit();', &> % }
% my $onclick = $cgi->param('lock_locationnum') % ? 'document.OrderPkgForm.submit()' % : 'standardize_new_location()'; " onClick = "this.disabled=true; <% $onclick %>;" <% $pkgpart ? '' : 'DISABLED' %> >
<%init> my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" unless $curuser->access_right('Order customer package'); my $conf = new FS::Conf; my $date_format = $conf->config('date_format') || '%m/%d/%Y'; $cgi->param('custnum') =~ /^(\d+)$/ or die "no custnum"; my $custnum = $1; my $cust_main = qsearchs({ 'table' => 'cust_main', 'hashref' => { 'custnum' => $custnum }, 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql, }); my $part_pkg = ''; if ( $cgi->param('lock_pkgpart') ) { $part_pkg = qsearchs({ 'table' => 'part_pkg', 'hashref' => { 'pkgpart' => scalar($cgi->param('lock_pkgpart')) }, 'extra_sql' => ' AND '. FS::part_pkg->agent_pkgs_sql( $cust_main->agent ), }) or die "unknown pkgpart ". $cgi->param('lock_pkgpart'); } my $pkgpart = $part_pkg ? $part_pkg->pkgpart : scalar($cgi->param('pkgpart')); my $format = $date_format. ' %T %z (%Z)'; #false laziness w/REAL_cust_pkg.cgi? my $start_date = ''; if( ! $conf->exists('order_pkg-no_start_date') ) { $start_date = $cust_main->next_bill_date; $start_date = $start_date ? time2str($format, $start_date) : ''; } my $svcpart = scalar($cgi->param('svcpart'));