X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fsvc_broadband.cgi;h=ec73c6d5220fce89a2aec128064c3e29b6c52b94;hb=8dd41f364aaba88969dfd0908feb22709025e7f6;hp=05b6ac56dc346a4b76f1f6f19c9d8d53e14f6fc8;hpb=517283d2c614360fa7e849e7f9835317b4a566c6;p=freeside.git diff --git a/httemplate/view/svc_broadband.cgi b/httemplate/view/svc_broadband.cgi index 05b6ac56d..ec73c6d52 100644 --- a/httemplate/view/svc_broadband.cgi +++ b/httemplate/view/svc_broadband.cgi @@ -1,8 +1,9 @@ <& elements/svc_Common.html, - table => 'svc_broadband', - labels => \%labels, - fields => \@fields, + table => 'svc_broadband', + labels => \%labels, + fields => \@fields, svc_callback => \&svc_callback, + radius_usage => 1, &> <%init> @@ -31,11 +32,19 @@ my @fields = ( 'speed_up', { field => 'ip_addr', value_callback => \&ip_addr }, { field => 'sectornum', value_callback => \§ornum }, - { field => 'mac_addr', value_callback => \&mac_addr }, + { field => 'mac_addr', type=>'mac_addr', value_callback => \&mac_addr }, #'latitude', #'longitude', { field => 'coordinates', value_callback => \&coordinates }, 'altitude', + + 'radio_serialnum', + 'radio_location', + 'poe_location', + 'rssi', + 'suid', + { field => 'shared_svcnum', value_callback=> \&shared_svcnum, }, #value_callback => + 'vlan_profile', 'authkey', 'plan_id', @@ -69,7 +78,7 @@ sub ip_addr { sub mac_addr { my $svc = shift; - join(':', $svc->mac_addr =~ /../g); + $svc->mac_addr_formatted('U',':'); } sub usergroup { @@ -112,9 +121,36 @@ sub coordinates { ); } +sub shared_svcnum { + my $svc_broadband = shift; + return '' unless $svc_broadband->shared_svcnum; + + my $shared_svc_broadband = + qsearchs('svc_broadband', { 'svcnum' => $svc_broadband->shared_svcnum, + } + #agent virt? + ) + or return ''; + my $shared_cust_pkg = $shared_svc_broadband->cust_svc->cust_pkg; + + $shared_svc_broadband->label. + ( $shared_cust_pkg + ? ' ('. $shared_cust_pkg->cust_main->name. ')' + : '' + ); +} + sub svc_callback { # trying to move to the callback style my ($cgi, $svc_x, $part_svc, $cust_pkg, $fields, $opt) = @_; + + if ( $part_svc->part_svc_column('latitude')->columnflag eq 'F' + && $part_svc->part_svc_column('longitude')->columnflag eq 'F' + ) + { + @$fields = grep { !ref($_) || $_->{field} ne 'coordinates' } @$fields; + } + # again, we assume at most one of these exports per part_svc my ($nas_export) = $part_svc->part_export('broadband_nas'); if ( $nas_export ) {