X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fsvc_forward.pm;h=1476dbf78cd30b87c2c1f9e61dce8ff77e57fd29;hb=29a315f2dc4187e5558315f76c3d27d11e287620;hp=288ab34087b9a34726ee1f4b730641283fafc9d5;hpb=3d2530a7d08dfae1473015d96d7394dc15b86ce1;p=freeside.git diff --git a/FS/FS/svc_forward.pm b/FS/FS/svc_forward.pm index 288ab3408..1476dbf78 100644 --- a/FS/FS/svc_forward.pm +++ b/FS/FS/svc_forward.pm @@ -263,7 +263,7 @@ sub check { my $x = $self->setfixed; return $x unless ref($x); - my $part_svc = $x; + #my $part_svc = $x; my $error = $self->ut_numbern('svcnum') || $self->ut_number('srcsvc') @@ -271,8 +271,7 @@ sub check { ; return $error if $error; - return "Unknown srcsvc" - unless qsearchs('svc_acct', { 'svcnum' => $self->srcsvc } ); + return "Unknown srcsvc" unless $self->srcsvc_acct; return "Both dstsvc and dst were defined; one one can be specified" if $self->dstsvc && $self->dst; @@ -280,9 +279,7 @@ sub check { return "one of dstsvc or dst is required" unless $self->dstsvc || $self->dst; - return "Unknown dstsvc" - unless qsearchs('svc_acct', { 'svcnum' => $self->dstsvc } ) - || ! $self->dstsvc; + return "Unknown dstsvc" unless $self->dstsvc_acct || ! $self->dstsvc; if ( $self->dst ) { $self->dst =~ /^([\w\.\-]+)\@(([\w\-]+\.)+\w+)$/ @@ -295,11 +292,32 @@ sub check { ''; #no error } +=item srcsvc_acct + +Returns the FS::svc_acct object referenced by the srcsvc column. + +=cut + +sub srcsvc_acct { + my $self = shift; + qsearchs('svc_acct', { 'svcnum' => $self->srcsvc } ); +} + +=item dstsvc_acct + +Returns the FS::svc_acct object referenced by the srcsvc column, or false for +forwards not local to freeside. + =back +sub dstsvc_acct { + my $self = shift; + qsearchs('svc_acct', { 'svcnum' => $self->dstsvc } ); +} + =head1 VERSION -$Id: svc_forward.pm,v 1.6 2001-08-21 00:39:07 ivan Exp $ +$Id: svc_forward.pm,v 1.8 2001-10-29 20:53:38 ivan Exp $ =head1 BUGS