X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fradius_usergroup.pm;h=9c78796c42c30763e39466ad955b4525a5a9a208;hb=7c5f50804027577aac17d0fcefedcd0d0b6ca180;hp=2de142397b9c3a7e12baba5c0b2730e66420ef25;hpb=9f2280fbce022ab9bcfc46fe94483730b0aeb0f8;p=freeside.git diff --git a/FS/FS/radius_usergroup.pm b/FS/FS/radius_usergroup.pm index 2de142397..9c78796c4 100644 --- a/FS/FS/radius_usergroup.pm +++ b/FS/FS/radius_usergroup.pm @@ -1,13 +1,11 @@ package FS::radius_usergroup; +use base qw(FS::Record); use strict; -use vars qw( @ISA ); use FS::Record qw( qsearch qsearchs ); use FS::svc_acct; use FS::radius_group; -@ISA = qw(FS::Record); - =head1 NAME FS::radius_usergroup - Object methods for radius_usergroup records @@ -96,25 +94,29 @@ and replace methods. sub check { my $self = shift; - + my $svcnum = $self->svcnum; die "radius_usergroup.groupname is deprecated" if $self->groupname; $self->ut_numbern('usergroupnum') - || $self->ut_foreign_key('svcnum','svc_acct','svcnum') + || ( $self->ut_foreign_key('svcnum','svc_acct','svcnum') + && $self->ut_foreign_key('svcnum','svc_broadband','svcnum') + && "Can't find radius_usergroup.svcnum $svcnum in svc_acct.svcnum or svc_broadband.svcnum" ) || $self->ut_foreign_key('groupnum','radius_group','groupnum') || $self->SUPER::check ; } -=item svc_acct +=item svc_x -Returns the account associated with this record (see L). +Returns the account associated with this record (see L and +L). =cut sub svc_acct { my $self = shift; - qsearchs('svc_acct', { svcnum => $self->svcnum } ); + qsearchs('svc_acct', { svcnum => $self->svcnum } ) || + qsearchs('svc_broadband', { svcnum => $self->svcnum } ) } =item radius_group @@ -123,11 +125,6 @@ Returns the RADIUS group associated with this record (see L). =cut -sub radius_group { - my $self = shift; - qsearchs('radius_group', { 'groupnum' => $self->groupnum } ); -} - sub _upgrade_data { #class method my ($class, %opts) = @_;