X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_main_invoice.pm;h=3077d645a03e36e8658df7aebc9c6000630de420;hb=4c18a45810f000bb013d23d4738cfca012794c4b;hp=eb0162f0ee21bdbea22715438ac0cbe80e69714d;hpb=f28fd9cd33b10ea314049ba8c4ea73a5717a1bba;p=freeside.git diff --git a/FS/FS/cust_main_invoice.pm b/FS/FS/cust_main_invoice.pm index eb0162f0e..3077d645a 100644 --- a/FS/FS/cust_main_invoice.pm +++ b/FS/FS/cust_main_invoice.pm @@ -88,7 +88,7 @@ sub replace { return "Can't change custnum!" unless $old->custnum == $new->custnum; - $new->SUPER::replace; + $new->SUPER::replace($old); } @@ -133,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+)$/ ) { + } 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); } @@ -171,7 +172,7 @@ sub address { =head1 VERSION -$Id: cust_main_invoice.pm,v 1.5 2001-08-11 00:01:39 ivan Exp $ +$Id: cust_main_invoice.pm,v 1.8 2001-10-25 16:13:10 ivan Exp $ =head1 BUGS