X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fsvc_phone.cgi;h=433ea1761ab32cd80eeb9e763be3cad25bd556af;hb=80fa5a2f42e60bede178ff1118e7c7532fced9a5;hp=09d5be483a4851e76e94816175b0b785c2d2a58d;hpb=d906eeadf9576cbdb0e337a774ab17327009ad45;p=freeside.git diff --git a/httemplate/view/svc_phone.cgi b/httemplate/view/svc_phone.cgi index 09d5be483..433ea1761 100644 --- a/httemplate/view/svc_phone.cgi +++ b/httemplate/view/svc_phone.cgi @@ -1,28 +1,60 @@ <% include('elements/svc_Common.html', 'table' => 'svc_phone', - 'fields' => [qw( - countrycode - phonenum - sip_password - pin - phone_name - )], - 'labels' => { - 'countrycode' => 'Country code', - 'phonenum' => 'Phone number', - 'sip_password' => 'SIP password', - 'pin' => 'PIN', - 'phone_name' => 'Name', - }, + 'fields' => \@fields, + 'labels' => \%labels, 'html_foot' => $html_foot, ) %> <%init> +my $conf = new FS::Conf; +my $countrydefault = $conf->config('countrydefault') || 'US'; + +my $fields = FS::svc_phone->table_info->{'fields'}; +my %labels = map { $_ => ( ref($fields->{$_}) + ? $fields->{$_}{'label'} + : $fields->{$_} + ); + } keys %$fields; + +my @fields = qw( countrycode phonenum ); +push @fields, 'domain' if $conf->exists('svc_phone-domain'); +push @fields, qw( pbx_title sip_password pin phone_name route gwlist forwarddst email ); + +if ( $conf->exists('svc_phone-lnp') ) { +push @fields, 'lnp_status', + 'lnp_reject_reason', + { field => 'portable', type => 'checkbox', }, + 'lrn', + { field => 'lnp_desired_due_date', type => 'date', }, + { field => 'lnp_due_date', type => 'date', }, + 'lnp_other_provider', + 'lnp_other_provider_account'; +} + my $html_foot = sub { my $svc_phone = shift; ### + # E911 Info + ### + + my $e911 = + 'E911 Information'. + &ntable("#cccccc"). ''. ntable("#cccccc",2). + 'Location'. + ''. + $svc_phone->location_label( 'join_string' => '
', + 'double_space' => '   ', + 'escape_function' => \&encode_entities, + 'countrydefault' => $countrydefault, + ). + ''. + ''. + '
' + ; + + ### # Devices ### @@ -56,6 +88,7 @@ my $html_foot = sub { 'Type'. 'MAC Addr'. ''. + ''. ''; my $bgcolor1 = '#eeeeee'; my $bgcolor2 = '#ffffff'; @@ -71,10 +104,12 @@ my $html_foot = sub { my $td = qq(); my $devicenum = $phone_device->devicenum; + my $export_links = join( '
', @{ $phone_device->export_links } ); $devices .= ''. $td. $phone_device->part_device->devicename. ''. $td. $phone_device->mac_addr. ''. + $td. $export_links. ''. "$td( ". qq(edit | ). qq(delete). @@ -95,29 +130,39 @@ my $html_foot = sub { 'billed' => 'done', ; - #XXX src & charged party (& default prefix) as per voip_cdr.pm - #XXX handle toll free too - my $number = $svc_phone->phonenum; $number = $svc_phone->countrycode. $number unless $svc_phone->countrycode eq '1'; + #src & charged party as per voip_cdr.pm + my $search; + my $cust_pkg = $svc_phone->cust_svc->cust_pkg; + if ( $cust_pkg && $cust_pkg->part_pkg->option('disable_src') ) { + $search = "charged_party=$number"; + } else { + $search = "charged_party_or_src=$number"; + } + + #XXX default prefix as per voip_cdr.pm + #XXX handle toll free too + #my @links = map { # qq(). # "View $_ CDRs"; #} keys(%what); my @links = map { - qq(). + qq(). "View $_ CDRs"; } keys(%what); - my @ilinks = ( qq(). + my @ilinks = ( qq(). 'View incoming CDRs' ); ### # concatenate & return ### + $e911. $devices. join(' | ', @links ). '
'. join(' | ', @ilinks). '
';