X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fsvc_phone.pm;h=49453915005e62032156aab254c72d318ef87c9f;hb=72deba42ac5847c2a6bdeea20157035b8f9df7ae;hp=99288ec73eed994446925636d14a8f5241633625;hpb=224991fedb653d040c9d280726888cad29fc26db;p=freeside.git diff --git a/FS/FS/svc_phone.pm b/FS/FS/svc_phone.pm index 99288ec73..494539150 100644 --- a/FS/FS/svc_phone.pm +++ b/FS/FS/svc_phone.pm @@ -79,6 +79,41 @@ Voicemail PIN Optional svcnum from svc_pbx +=item forwarddst + +Forwarding destination + +=item email + +Email address for virtual fax (fax-to-email) services + +=item lnp_status + +LNP Status (can be null, native, portedin, portingin, portin-reject, +portingout, portout-reject) + +=item portable + +=item lrn + +=item lnp_desired_due_date + +=item lnp_due_date + +=item lnp_other_provider + +If porting the number in or out, name of the losing or winning provider, +respectively. + +=item lnp_other_provider_account + +Account number of other provider. See lnp_other_provider. + +=item lnp_reject_reason + +See lnp_status. If lnp_status is portin-reject or portout-reject, this is an +optional reject reason. + =back =head1 METHODS @@ -136,6 +171,12 @@ sub table_info { disable_inventory => 1, disable_select => 1, }, + 'forwarddst' => { label => 'Forward Destination', + %dis2, + }, + 'email' => { label => 'Email', + %dis2, + }, 'lnp_status' => { label => 'LNP Status', type => 'select-lnp_status.html', %dis2, @@ -429,6 +470,8 @@ sub check { || $self->ut_foreign_keyn('pbxsvc', 'svc_pbx', 'svcnum' ) || $self->ut_foreign_keyn('domsvc', 'svc_domain', 'svcnum' ) || $self->ut_foreign_keyn('locationnum', 'cust_location', 'locationnum') + || $self->ut_numbern('forwarddst') + || $self->ut_textn('email') || $self->ut_numbern('lrn') || $self->ut_numbern('lnp_desired_due_date') || $self->ut_numbern('lnp_due_date') @@ -663,8 +706,8 @@ sub get_cdrs { my @orwhere = map " $_ = '$number' ", @fields; push @orwhere, map " $_ = '$prefix$number' ", @fields - if length($prefix); - if ( $prefix =~ /^\+(\d+)$/ ) { + if defined($prefix) && length($prefix); + if ( $prefix && $prefix =~ /^\+(\d+)$/ ) { push @orwhere, map " $_ = '$1$number' ", @fields } @@ -684,7 +727,8 @@ sub get_cdrs { 'table' => 'cdr', 'hashref' => \%hash, 'extra_sql' => $extra_sql, - 'order_by' => "ORDER BY startdate $for_update", + 'order_by' => $options{'billsec_sum'} ? '' : "ORDER BY startdate $for_update", + 'select' => $options{'billsec_sum'} ? 'sum(billsec) as billsec_sum' : '*', } ); @cdrs;