use FS::svc_acct_pop;
use FS::cust_main;
use FS::cust_pkg;
+use FS::svc_acct;
+use FS::acct_snarf;
use FS::Msgcat qw(gettext);
use FS::ClientAPI; #hmm
)
],
+ 'part_referral' =>
+ [
+ map { $_->hashref }
+ qsearch('part_referral',
+ dbdef->table('part_referral')->column('disabled')
+ ? { 'disabled' => '' }
+ : {}
+ )
+ ],
+
'agentnum2part_pkg' =>
{
map {
'payby' => [ $conf->config('signup_server-payby') ],
+ 'cvv_enabled' => defined dbdef->table('cust_main')->column('paycvv'),
+
'msgcat' => { map { $_=>gettext($_) } qw(
passwords_dont_match invalid_card unknown_card_type not_a
) },
'countrydefault' => $conf->config('countrydefault') || 'US',
+ 'refnum' => $conf->config('signup_server-default_refnum'),
+
};
if (
map { $_ => $packet->{$_} } qw(
last first ss company address1 address2 city county state zip country
- daytime night fax payby payinfo paydate payname referral_custnum comments
+ daytime night fax payby payinfo paycvv paydate payname referral_custnum
+ comments
),
} );
qw( username _password sec_phrase popnum ),
} );
+ my @acct_snarf;
+ my $snarfnum = 1;
+ while ( length($packet->{"snarf_machine$snarfnum"}) ) {
+ my $acct_snarf = new FS::acct_snarf ( {
+ 'machine' => $packet->{"snarf_machine$snarfnum"},
+ 'protocol' => $packet->{"snarf_protocol$snarfnum"},
+ 'username' => $packet->{"snarf_username$snarfnum"},
+ '_password' => $packet->{"snarf_password$snarfnum"},
+ } );
+ $snarfnum++;
+ push @acct_snarf, $acct_snarf;
+ }
+ $svc_acct->child_objects( \@acct_snarf );
+
my $y = $svc_acct->setdefault; # arguably should be in new method
return { 'error' => $y } if $y && !ref($y);