'taxproduct_select'=> 'Tax products',
'plan' => 'Price plan',
'disabled' => 'Disable new orders',
+ 'disable_line_item_date_ranges' => 'Disable line item date ranges',
'setup_cost' => 'Setup cost',
'recur_cost' => 'Recur cost',
'pay_weight' => 'Payment weight',
'agentnum' => 'Agent',
'setup_fee' => 'Setup fee',
'recur_fee' => 'Recurring fee',
+ 'recur_show_zero' => 'Show zero recurring',
'discountnum' => 'Offer discounts for longer terms',
'bill_dst_pkgpart' => 'Include line item(s) from package',
'svc_dst_pkgpart' => 'Include services of package',
'report_option' => 'Report classes',
- 'fcc_ds0s' => 'Voice-grade eqivalents',
+ 'fcc_ds0s' => 'Voice-grade equivalents',
},
'fields' => [
: ()
),
{field=>'disabled', type=>$disabled_type, value=>'Y'},
+ {field=>'disable_line_item_date_ranges', type=>$disabled_type, value=>'Y'},
{ type => 'tablebreak-tr-title',
value => 'Pricing', #better name?
{ field => 'recur_fee',
type => 'money',
disabled => sub { $recur_disabled },
+ onchange => 'recur_changed',
},
-
+
+ { field => 'recur_show_zero',
+ type => 'checkbox',
+ value => 'Y',
+ disabled => sub { $recur_show_zero_disabled },
+ },
+
#price plan
#setup fee
#recurring frequency
my %options = ();
my $recur_disabled = 1;
+my $recur_show_zero_disabled = 1;
my $pkgpart = '';
$opt->{action} = 'Custom' if $cgi->param('pkgnum');
$recur_disabled = $cgi->param('freq') ? 0 : 1;
+ $recur_show_zero_disabled =
+ $cgi->param('freq')
+ ? $cgi->param('recur_fee') ? 0 : 1
+ : 1;
foreach ($cgi->param) {
/^usage_taxproductnum_(\d+)$/ && ($taxproductnums{$1} = 1);
}
@options;
- #$cgi->param($_, $options{$_}) foreach (qw( setup_fee recur_fee ));
$object->set($_ => scalar($cgi->param($_)) )
- foreach (qw( setup_fee recur_fee ));
+ foreach (qw( setup_fee recur_fee disable_line_item_date_ranges ));
$pkgpart = $object->pkgpart;
my $part_pkg = FS::part_pkg->new( $hashref );
$part_pkg->set($_ => '0')
- foreach (qw( setup_fee recur_fee ));
+ foreach (qw( setup_fee recur_fee disable_line_item_date_ranges ));
$part_pkg;
%options = $object->options;
$object->set($_ => $object->option($_))
- foreach (qw( setup_fee recur_fee ));
+ foreach (qw( setup_fee recur_fee disable_line_item_date_ranges ));
$pkgpart = $object->pkgpart;
%options = $object->options;
$object->set($_ => $options{$_})
- foreach (qw( setup_fee recur_fee ));
+ foreach (qw( setup_fee recur_fee disable_line_item_date_ranges ));
$recur_disabled = $object->freq ? 0 : 1;
};
if ( freq == '0' ) {
what.form.recur_fee.disabled = true;
what.form.recur_fee.style.backgroundColor = '#dddddd';
+ what.form.recur_show_zero.disabled = true;
+ //what.form.recur_show_zero.style.backgroundColor= '#dddddd';
} else {
what.form.recur_fee.disabled = false;
what.form.recur_fee.style.backgroundColor = '#ffffff';
+ what.form.recur_show_zero.disabled = false;
+ //what.form.recur_show_zero.style.backgroundColor= '#ffffff';
}
}
+ function recur_changed(what) {
+ var recur = what.value;
+ if ( recur == 0 ) {
+ what.form.recur_show_zero.disabled = false;
+ } else {
+ what.form.recur_show_zero.disabled = true;
+ }
+ }
+
function agent_changed(what) {
- var agentnum = what.options[what.selectedIndex].value;
+ var agentnum;
+ if ( what.type == 'select-one' ) {
+ agentnum = what.options[what.selectedIndex].value;
+ } else {
+ agentnum = what.value;
+ }
if ( agentnum == 0 ) {
what.form.agent_type.disabled = false;