1 <& elements/browse.html,
4 'menubar' => [ 'Add a new tower' =>
6 #'Sector coverage maps' =>
7 # $p.'search/sector.html',
9 $p.'search/tower-map.html',
10 'Download CSV for towercoverage.com' =>
11 $p.'misc/tower-export.html?format=tc'
13 'query' => { 'table' => 'tower', },
14 'count_query' => 'SELECT COUNT(*) FROM tower',
16 'disabled_statuspos' => 1,
17 'header' => [ 'Name', 'Location', 'Sectors', ],
18 'fields' => [ $tower_sub,
23 'cell_style' => [ $tagdesc_style ],
28 unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
30 #false laziness w/ browse/part_tag.html
31 my $tagdesc_style = sub { 'background-color:#'.shift->color };
33 my $num_svc_links = sub {
34 my ($query_string, $sectors) = @_;
36 my $num_svc_broadband = FS::svc_broadband->count("sectornum IN($sectors)");
37 my $num_svc_acct = FS::svc_acct->count("sectornum IN($sectors)");
40 'data' => $num_svc_broadband ?
41 '<B>'.$num_svc_broadband.'</B>'.
44 'link' => $p.'search/svc_broadband.cgi?'.$query_string,
51 'data' => $num_svc_acct ?
52 '<B>'.$num_svc_acct.'</B>'.
55 'link' => $p.'search/svc_acct.cgi?magic=advanced;'.$query_string,
65 my $coords = $m->scomp("/elements/coord-links.html", $tower->latitude, $tower->longitude, $tower->towername);
69 { 'data' => "Latitude: ". $tower->latitude.
70 "<br>Longitude: ". $tower->longitude.
71 "<br>Altitude: ". $tower->altitude.
72 "<br>Height: ". $tower->height.
73 "<br>Veg. height: ". $tower->veg_height,
75 { 'data' => $coords, 'link' => "Coordinates", },
82 my $sectors = join(',',
83 map { $_->sectornum } $tower->tower_sector, $tower->default_sector
87 { 'data' => $tower->towername. ' ', },
88 { 'data' => ' (edit) ', size => '-1',
89 'link' => $p.'edit/tower.html?' . $tower->towernum },
91 # turn these into rows
93 &{$num_svc_links}( 'towernum='.$tower->towernum, $sectors )
97 my $sector_sub = sub {
103 my $sectornum = $sector->sectornum;
106 'data' => $sector->sectorname. ' ',
107 'link' => ( $sector->ip_addr ? 'http://'. $sector->ip_addr : '' ),
110 &{$num_svc_links}( 'sectornum='.$sectornum, $sectornum )
112 } $tower->tower_sector