X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_svc.pm;h=01f3034948b4b7f9411c4faa8ad7610e896d82e9;hb=79981f908752492b00cb4bdce3dceb0636fb81dd;hp=6ca48894a491b446b491afa16d6d372aec21b36f;hpb=942431fdcb3803b7ef98b1be8c4dc188e1a4b5aa;p=freeside.git diff --git a/FS/FS/part_svc.pm b/FS/FS/part_svc.pm index 6ca48894a..01f303494 100644 --- a/FS/FS/part_svc.pm +++ b/FS/FS/part_svc.pm @@ -1,7 +1,8 @@ package FS::part_svc; +use base qw(FS::Record); use strict; -use vars qw( @ISA $DEBUG ); +use vars qw( $DEBUG ); use Tie::IxHash; use FS::Record qw( qsearch qsearchs fields dbh ); use FS::Schema qw( dbdef ); @@ -11,8 +12,6 @@ use FS::export_svc; use FS::cust_svc; use FS::part_svc_class; -@ISA = qw(FS::Record); - $DEBUG = 0; =head1 NAME @@ -65,6 +64,10 @@ empty for full access, "readonly" for read-only, "hidden" to hide it entirely right to change the password field, rather than just "Edit password". Only relevant to svc_acct for now. +=item has_router - Allow the service to have an L connected +through it. Probably only relevant to svc_broadband, svc_acct, and svc_dsl +for now. + =back =head1 METHODS @@ -394,11 +397,12 @@ sub check { $self->ut_numbern('svcpart') || $self->ut_text('svc') || $self->ut_alpha('svcdb') - || $self->ut_enum('disabled', [ '', 'Y' ] ) - || $self->ut_enum('preserve', [ '', 'Y' ] ) + || $self->ut_flag('disabled') + || $self->ut_flag('preserve') || $self->ut_enum('selfservice_access', [ '', 'hidden', 'readonly' ] ) || $self->ut_foreign_keyn('classnum', 'part_svc_class', 'classnum' ) - || $self->ut_enum('restrict_edit_password', [ '', 'Y' ] ) + || $self->ut_flag('restrict_edit_password') + || $self->ut_flag('has_router') ; return $error if $error; @@ -476,7 +480,7 @@ are capable of returing available DID (phone number) information. sub part_export_did { my $self = shift; - grep $_->can('get_dids'), $self->part_export; + grep $_->can_get_dids, $self->part_export; } =item part_export_dsl_pull @@ -757,11 +761,9 @@ sub process { if ( $flag =~ /^[MAH]$/ ) { $param->{ $f } = delete( $param->{ $f.'_classnum' } ); } - if ( $flag =~ /^S$/ - or $_ eq 'usergroup' ) { - $param->{ $f } = ref($param->{ $f }) - ? join(',', @{$param->{ $f }} ) - : $param->{ $f }; + if ( ( $flag =~ /^[MAHS]$/ or $_ eq 'usergroup' ) + and ref($param->{ $f }) ) { + $param->{ $f } = join(',', @{ $param->{ $f } }); } ( $f, $f.'_flag', $f.'_label' ); }