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=5be619e9800ef2dfc7cda3efacce53a8774fedef;hb=5372897f367498972c96f5494e142e6e11b29eb8;hpb=9133cc8af3b3ea95ec52b5c4f226bfff534a6ed6 diff --git a/FS/FS/part_export/acct_sql_status.pm b/FS/FS/part_export/acct_sql_status.pm index 5be619e98..0e7343151 100644 --- a/FS/FS/part_export/acct_sql_status.pm +++ b/FS/FS/part_export/acct_sql_status.pm @@ -1,17 +1,21 @@ -package FS::part_export_acct_sql_status; +package FS::part_export::acct_sql_status; 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;