X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_main_invoice.pm;h=61a8f75343cd72a0138faf08b727a7a91c4394b8;hb=8c1f9804d9a02c0c054eededeb500c72a640249a;hp=d06a718e1243035735ca6eeaf88c7984d32ef1be;hpb=9b1aada27ca0d46931edb05a34a9885e2f253778;p=freeside.git diff --git a/FS/FS/cust_main_invoice.pm b/FS/FS/cust_main_invoice.pm index d06a718e1..61a8f7534 100644 --- a/FS/FS/cust_main_invoice.pm +++ b/FS/FS/cust_main_invoice.pm @@ -118,8 +118,9 @@ sub check { =item checkdest Checks the dest field only. If it finds that the account ends in the -same domain configured in the configuration files, it will change the -invoice destination from an email address to a service number instead. +same domain configured as the B configuration file, it will change the +invoice destination from an email address to a service number (see +L). =cut @@ -132,13 +133,14 @@ sub checkdest { if ( $self->dest eq 'POST' ) { #contemplate our navel } elsif ( $self->dest =~ /^(\d+)$/ ) { - return "Unknown local account (specified by svcnum)" + return "Unknown local account (specified by svcnum: ". $self->dest. ")" unless qsearchs( 'svc_acct', { 'svcnum' => $self->dest } ); } elsif ( $self->dest =~ /^([\w\.\-]+)\@(([\w\.\-]+\.)+\w+)$/ ) { my($user, $domain) = ($1, $2); if ( $domain eq $mydomain ) { my $svc_acct = qsearchs( 'svc_acct', { 'username' => $user } ); - return "Unknown local account (specified literally)" unless $svc_acct; + return "Unknown local account: $user\@$domain (specified literally)" + unless $svc_acct; $svc_acct->svcnum =~ /^(\d+)$/ or die "Non-numeric svcnum?!"; $self->dest($1); } @@ -157,8 +159,9 @@ Returns the literal email address for this record (or `POST'). sub address { my $self = shift; - if ( $self->dest =~ /(\d+)$/ ) { - my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $1 } ); + if ( $self->dest =~ /^(\d+)$/ ) { + my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $1 } ) + or return undef; $svc_acct->username . '@' . $mydomain; } else { $self->dest; @@ -169,7 +172,7 @@ sub address { =head1 VERSION -$Id: cust_main_invoice.pm,v 1.3 2001-07-27 06:17:46 thalakan Exp $ +$Id: cust_main_invoice.pm,v 1.6 2001-08-12 00:06:33 ivan Exp $ =head1 BUGS