X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=fs_signup%2Ffs_signup_server;h=8fbc819ad2bb5642cc89665e4aaea2db5286e6e6;hb=779280607cab20aafd3b71d161562395e183ef76;hp=f6702386ec3bc3a5e224a95cdb95062da6a8d22f;hpb=b812b5a4a664e0bd271392ae4a609b18e85ca6b6;p=freeside.git diff --git a/fs_signup/fs_signup_server b/fs_signup/fs_signup_server index f6702386e..8fbc819ad 100755 --- a/fs_signup/fs_signup_server +++ b/fs_signup/fs_signup_server @@ -5,7 +5,8 @@ use strict; use IO::Handle; -use FS::SSH qw(sshopen2); +use Tie::RefHash; +use Net::SSH qw(sshopen2); use FS::UID qw(adminsuidsetup); use FS::Record qw( qsearch qsearchs ); use FS::cust_main_county; @@ -15,7 +16,7 @@ use vars qw( $opt $Debug ); $Debug = 0; -my @payby = qw(CARD); +my @payby = qw(CARD PREPAY); my $user = shift or die &usage; &adminsuidsetup( $user ); @@ -28,7 +29,8 @@ my $pkgpart = $agent->pkgpart_hashref; my $refnum = shift or die &usage; -$SIG{CHLD} = sub { wait() }; +#causing trouble for some folks +#$SIG{CHLD} = sub { wait() }; my($fs_signupd)="/usr/local/sbin/fs_signupd"; @@ -159,16 +161,19 @@ while (1) { $error ||= $svc_acct->check; - $error ||= $cust_main->insert; - if ( $cust_pkg && ! $error ) { #in this case, $cust_pkg should always - #be definied, but.... - $cust_pkg->custnum( $cust_main->custnum ); - $error ||= $cust_pkg->insert; - warn "WARNING: $error on pre-checked cust_pkg record!" if $error; - $svc_acct->pkgnum( $cust_pkg->pkgnum ); - $error ||= $svc_acct->insert; - warn "WARNING: $error on pre-checked svc_acct record!" if $error; - } + use Tie::RefHash; + tie my %hash, 'Tie::RefHash'; + %hash = { $cust_pkg => [ $svc_acct ] }; + $error ||= $cust_main->insert( \%hash ); + #if ( $cust_pkg && ! $error ) { #in this case, $cust_pkg should always + # #be definied, but.... + # $cust_pkg->custnum( $cust_main->custnum ); + # $error ||= $cust_pkg->insert; + # warn "WARNING: $error on pre-checked cust_pkg record!" if $error; + # $svc_acct->pkgnum( $cust_pkg->pkgnum ); + # $error ||= $svc_acct->insert; + # warn "WARNING: $error on pre-checked svc_acct record!" if $error; + #} warn "[fs_signup_server] Sending results...\n" if $Debug; print $writer $error, "\n";