X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=site_perl%2Fcust_svc.pm;h=ef93f86da1aff14b7f3e0bdd0111e046a465a4a2;hb=ea3a48ef84388ac35c3fd19d80e7ff1d3aee8c29;hp=2207eddba2d747acf0684d7f2c00b702f6caa4d8;hpb=8f056c54e593bcc77c07bd89ec83155e14e0687c;p=freeside.git diff --git a/site_perl/cust_svc.pm b/site_perl/cust_svc.pm index 2207eddba..ef93f86da 100644 --- a/site_perl/cust_svc.pm +++ b/site_perl/cust_svc.pm @@ -5,6 +5,12 @@ use vars qw(@ISA); use Carp; use Exporter; use FS::Record qw(fields qsearchs); +use FS::cust_pkg; +use FS::part_pkg; +use FS::part_svc; +use FS::svc_acct; +use FS::svc_acct_sm; +use FS::svc_domain; @ISA = qw(FS::Record Exporter); @@ -145,8 +151,10 @@ sub check { =item label -Returns a pretty-printed label and value for this service, i.e. `username' and -`foobar' or `domain' and `foo.bar'. +Returns a list consisting of: +- The name of this service (from part_svc) +- A meaningful identifier (username, domain, or mail alias) +- The table name (i.e. svc_domain) for this service =cut @@ -154,21 +162,23 @@ sub label { my($self)=@_; my($part_svc) = qsearchs( 'part_svc', { 'svcpart' => $self->svcpart } ); my($svcdb) = $part_svc->svcdb; - my($svc) = qsearchs( $svcdb, { 'svcnum' => $self->svcnum } ); + my($svc_x) = qsearchs( $svcdb, { 'svcnum' => $self->svcnum } ); + my($svc) = $part_svc->svc; + my($tag); if ( $svcdb eq 'svc_acct' ) { - return 'username', $svc->getfield('username'); + $tag = $svc_x->getfield('username'); } elsif ( $svcdb eq 'svc_acct_sm' ) { - my $domuser = $svc->domuser eq '*' ? '(anything)' : $svc->domuser; - my $svc_domain = qsearchs ( 'svc_domain', { 'svcnum' => $svc->domsvc } ); + my $domuser = $svc_x->domuser eq '*' ? '(anything)' : $svc_x->domuser; + my $svc_domain = qsearchs ( 'svc_domain', { 'svcnum' => $svc_x->domsvc } ); my $domain = $svc_domain->domain; - return 'email', "$domuser\@$domain"; + $tag = "$domuser\@$domain"; } elsif ( $svcdb eq 'svc_domain' ) { - return 'domain', $svc->getfield('domain'); + return $svc, $svc_x->getfield('domain'); } else { carp "warning: asked for label of unsupported svcdb; using svcnum"; - return 'svcnum', $svc->getfield('svcnum'); + $tag = $svc_x->getfield('svcnum'); } - + $svc, $tag, $svcdb; } =back @@ -194,7 +204,13 @@ no TableUtil, no FS::Lock ivan@sisd.com 98-mar-7 pod ivan@sisd.com 98-sep-21 $Log: cust_svc.pm,v $ -Revision 1.2 1998-11-12 03:32:46 ivan +Revision 1.4 1998-11-12 07:58:15 ivan +added svcdb to label + +Revision 1.3 1998/11/12 03:45:38 ivan +use FS::table_name for all tables qsearch()'ed + +Revision 1.2 1998/11/12 03:32:46 ivan added label method