'username' => { label=>'Database username' },
'password' => { label=>'Database password' },
'didgroup' => { label=>'DID group ID', default=>1 },
- 'tariffgroup' => { label=>'Tariff group ID', default=>1 },
'credit' => { label=>'Default credit limit' },
'billtype' => {label=>'Billing type',
type => 'select',
my $cust_pkg = $svc->cust_svc->cust_pkg;
my $cust_main = $cust_pkg->cust_main;
my $location = $cust_pkg->cust_location;
+ my $part_pkg = $cust_pkg->part_pkg;
my $error;
$DEBUG ||= $self->option('debug');
username => $username,
useralias => $username,
uipass => $svc->_password,
- # XXX these options may move to a part_pkg at some point
credit => $self->option('credit') || 0,
- tariff => $self->option('tariffgroup'),
+ tariff => $part_pkg->option('a2billing_tariff'),
status => 1,
lastname => $cust_main->last, # $svc->finger?
firstname => $cust_main->first,
state => $location->state,
country => $country3,
zipcode => $location->zip,
- typepaid => 1,
+ typepaid => $part_pkg->option('a2billing_type'),
sip_buddy => 1,
company_name => $cust_main->company,
+ activated => 't',
);
warn "creating A2B cc_card record for $username\n" if $DEBUG;
$error = $self->a2b_insert_or_replace('cc_card', 'svcnum', \%cc_card);
use strict;
use vars qw(%info);
+use Tie::IxHash;
+tie my %a2billing_types, 'Tie::IxHash', (
+ 0 => 'Prepaid',
+ 1 => 'Postpaid',
+);
+
%info = (
'disabled' => 1,
'fields' => {
'changing packages',
'type' => 'checkbox',
},
+
+ # miscellany--maybe put this in a separate module?
+
+ 'a2billing_tariff' => {
+ 'name' => 'A2Billing tariff group ID',
+ 'display_if' => sub {
+ FS::part_export->count("exporttype = 'a2billing'") > 0;
+ }
+ },
+ 'a2billing_type' => {
+ 'name' => 'A2Billing card type',
+ 'display_if' => sub {
+ FS::part_export->count("exporttype = 'a2billing'") > 0;
+ },
+ 'type' => 'select',
+ 'select_options' => \%a2billing_types,
+ },
+
},
'fieldorder' => [ qw(
setup_fee
unused_credit_cancel
unused_credit_suspend
unused_credit_change
+
+ a2billing_tariff
+ a2billing_type
)],
);
foreach my $field ( grep $_ !~ /^(setup|recur)_fee$/, @fields ) {
- if(!exists($href->{$field})) {
+ if(!exists($href->{$field})) {
# shouldn't happen
warn "nonexistent part_pkg option: '$field'\n";
next;
}
+ if ( exists($href->{$field}->{display_if}) ) {
+ my %args = ( 'plan' => $layer ); # anything else?
+ my $display = &{ $href->{$field}->{display_if} }(%args);
+ next if !$display;
+ }
$html .= '<TR><TD ALIGN="right">'. $href->{$field}{'name'}. '</TD><TD>';