X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Ftower.html;h=dfebc0031ef9bb83288dae536a6c2e71f4d93dfb;hp=c27d9d2559b929618d8e2caef93c0e6a3fe6b55b;hb=833cfe5c9938d33c3e6b97ed610c25a7afa6eb04;hpb=fb4ab1073f0d15d660c6cdc4e07afebf68ef3924 diff --git a/httemplate/edit/tower.html b/httemplate/edit/tower.html index c27d9d255..dfebc0031 100644 --- a/httemplate/edit/tower.html +++ b/httemplate/edit/tower.html @@ -2,19 +2,43 @@ name_singular => 'tower', table => 'tower', viewall_dir => 'browse', + html_init => include('/elements/mapselect.html'), fields => [ 'towername', { field=>'disabled', type=>'checkbox', value=>'Y', }, - { field => 'sectornum', - type => 'tower_sector', - o2m_table => 'tower_sector', - m2_label => 'Sector', - m2_error_callback => $m2_error_callback, + { field=>'color', type=>'pickcolor' }, + { field => 'default_ip_addr', + curr_value_callback => $default_ip_addr_callback }, + 'latitude', + 'longitude', + 'altitude', + 'height', + 'veg_height', + 'up_rate_limit', + 'down_rate_limit', +# { field => 'sectornum', +# type => 'tower_sector', +# o2m_table => 'tower_sector', +# m2_label => 'Sector', +# m2_error_callback => $m2_error_callback, +# }, + { type => 'tower_sectors', + field => 'sectornum', + # does its own o2m-thing }, ], - labels => { 'towernum' => 'Tower', - 'towername' => 'Name', - 'sectornum' => 'Sector', - 'disabled' => 'Disabled', + labels => { 'towernum' => 'Tower', + 'towername' => 'Name', + 'sectornum' => 'Sector', + 'disabled' => 'Disabled', + 'default_ip_addr' => 'Tower IP address', + 'latitude' => 'Latitude', + 'longitude' => 'Longitude', + 'altitude' => 'Altitude (feet)', + 'height' => 'Tower height (feet)', + 'veg_height' => 'Vegetation height (feet)', + 'color' => 'Color', + 'up_rate_limit' => 'Up Rate Limit(Kbps)', + 'down_rate_limit' => 'Down Rate Limit(Kbps)', }, &> <%init> @@ -22,16 +46,26 @@ my $m2_error_callback = sub { # reconstruct the list my ($cgi, $object) = @_; - my @fields = qw(sectorname ip_addr); + my @fields = qw( + sectorname ip_addr height freq_mhz direction width tilt v_width db_high db_low sector_range up_rate_limit down_rate_limit + ); + map { my $k = $_; - next if !length($cgi->param($k.'_sectorname')); new FS::tower_sector { 'towernum' => $object->towernum, 'sectornum' => scalar( $cgi->param($k) ), map { $_ => scalar( $cgi->param($k.'_'.$_) ) } @fields, }; - } grep /^sectornum\d+$/, ($cgi->param); + } grep length($cgi->param($_.'_sectorname')), + grep /^sectornum\d+$/, + ($cgi->param); +}; + +my $default_ip_addr_callback = sub { + my ($cgi, $object) = @_; + my $sector = $object ? $object->default_sector : ''; + $sector ? $sector->ip_addr : ''; };