X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Facct_sql_status.pm;h=0e734315181d62c82ef0f5a3c8c68216916b0f52;hp=5ad462e7feacab1bd9912356de06429e67a0f6f5;hb=5372897f367498972c96f5494e142e6e11b29eb8;hpb=8b445f9394a0d6524d307aadc7f3d5e81c3bae1a diff --git a/FS/FS/part_export/acct_sql_status.pm b/FS/FS/part_export/acct_sql_status.pm index 5ad462e7f..0e7343151 100644 --- a/FS/FS/part_export/acct_sql_status.pm +++ b/FS/FS/part_export/acct_sql_status.pm @@ -4,14 +4,18 @@ use base qw( FS::part_export::sql_Common ); use strict; use warnings; use vars qw( %info ); +use Tie::IxHash; +use FS::DBI; -my $options = __PACKAGE__->sql_options; -delete $options->{$_} for qw( table schema static primary_key ); +tie my %options, 'Tie::IxHash', %{__PACKAGE__->sql_options}; +delete $options{$_} for qw( table schema static primary_key ); %info = ( 'svc' => 'svc_acct', - 'options' => $options, + 'desc' => 'Mailbox status information from SQL', + 'options' => \%options, 'nodomain' => '', + 'no_machine' => 1, 'notes' => <connect( map $self->option($_), qw(datasrc username password) ) - or do { $hashref->{'error'} = "can't connect: ". $DBI::errstr; return; }; + my $dbh = FS::DBI->connect( map $self->option($_), qw(datasrc username password) ) + or return "can't connect: ". $FS::DBI::errstr; ### #vacation settings ### my $vsth = $dbh->prepare('SELECT * FROM vacation WHERE email = ?') - or do { $hashref->{'error'} = "can't prepare: ". $dbh->errstr; return; }; + or return "can't prepare: ". $dbh->errstr; $vsth->execute( $svc_acct->email ) - or do { $hashref->{'error'} = "can't execute: ". $vsth->errstr; return; }; + or return "can't execute: ". $vsth->errstr; my $vrow = $vsth->fetchrow_hashref; if ( $vrow ) { @@ -58,9 +62,9 @@ sub export_getstatus { ### my $ssth = $dbh->prepare('SELECT * FROM users WHERE address = ?') - or do { $hashref->{'error'} = "can't prepare: ". $dbh->errstr; return; }; + or return "can't prepare: ". $dbh->errstr; $ssth->execute( $svc_acct->email ) - or do { $hashref->{'error'} = "can't execute: ". $ssth->errstr; return; }; + or return "can't execute: ". $ssth->errstr; my $srow = $ssth->fetchrow_hashref; if ( $srow ) { @@ -79,6 +83,9 @@ sub export_getstatus { #htmlref not implemented/used for this status export + + ''; #no errors + } 1;