X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fsvc_broadband.pm;h=a327f46e22b00753b101f985da0d8ebb6169ce1a;hb=d64984bbfe839fbe71830862a6841380425f3dbe;hp=ac463bc5cb6f8fb9704e036a10e88bb8f04e956a;hpb=65befdb357c410bd24bf411551cd9d091d82b10d;p=freeside.git diff --git a/FS/FS/svc_broadband.pm b/FS/FS/svc_broadband.pm index ac463bc5c..a327f46e2 100755 --- a/FS/FS/svc_broadband.pm +++ b/FS/FS/svc_broadband.pm @@ -395,18 +395,21 @@ sub check { ? qsearchs('cust_svc', { 'svcnum' => $self->svcnum } ) : ''; my $cust_pkg; + my $svcpart; if ($cust_svc) { $cust_pkg = $cust_svc->cust_pkg; + $svcpart = $cust_svc->svcpart; }else{ $cust_pkg = qsearchs('cust_pkg', { 'pkgnum' => $self->pkgnum } ); return "Invalid pkgnum" unless $cust_pkg; + $svcpart = $self->svcpart; } my $agentnum = $cust_pkg->cust_main->agentnum if $cust_pkg; if ($self->routernum) { return "Router ".$self->routernum." does not provide this service" unless qsearchs('part_svc_router', { - svcpart => $self->cust_svc->svcpart, + svcpart => $svcpart, routernum => $self->routernum }); @@ -543,8 +546,6 @@ sub router { qsearchs('router', { routernum => $self->routernum }); } -=back - =item allowed_routers Returns a list of allowed FS::router objects. @@ -553,10 +554,13 @@ Returns a list of allowed FS::router objects. sub allowed_routers { my $self = shift; + my $svcpart = $self->svcnum ? $self->cust_svc->svcpart : $self->svcpart; map { $_->router } qsearch('part_svc_router', { svcpart => $self->cust_svc->svcpart }); } +=back + #class method sub _upgrade_data {