RT# 83250 - added expected data description to sector fields
authorChristopher Burger <burgerc@freeside.biz>
Wed, 1 May 2019 12:30:54 +0000 (08:30 -0400)
committerChristopher Burger <burgerc@freeside.biz>
Wed, 1 May 2019 12:30:54 +0000 (08:30 -0400)
httemplate/elements/tower_sector.html [new file with mode: 0644]

diff --git a/httemplate/elements/tower_sector.html b/httemplate/elements/tower_sector.html
new file mode 100644 (file)
index 0000000..cdcf67d
--- /dev/null
@@ -0,0 +1,70 @@
+% unless ( $opt{'js_only'} ) {
+
+  <INPUT TYPE="hidden" NAME="<%$name%>" ID="<%$id%>" VALUE="<% $curr_value %>">
+
+  <TABLE>
+    <TR>
+%     foreach my $field ( @fields ) {
+
+        <TD>
+          <INPUT TYPE  = "text"
+                 NAME  = "<%$name%>_<%$field%>"
+                 ID    = "<%$id%>_<%$field%>"
+                 SIZE  = "<% $size{$field} || 15 %>"
+                 VALUE = "<% scalar($cgi->param($name."_$field"))
+                             || $tower_sector->get($field) |h %>"
+                 <% $onchange %>
+          ><BR>
+          <FONT SIZE="-1"><% $label{$field} %></FONT>
+        </TD>
+%     }
+    </TR>
+  </TABLE>
+
+
+% }
+<%init>
+
+my( %opt ) = @_;
+
+my $name = $opt{'element_name'} || $opt{'field'} || 'sectornum';
+my $id = $opt{'id'} || 'sectornum';
+
+my $curr_value = $opt{'curr_value'} || $opt{'value'};
+
+my $onchange = '';
+if ( $opt{'onchange'} ) {
+  $onchange = $opt{'onchange'};
+  $onchange .= '(this)' unless $onchange =~ /\(\w*\);?$/;
+  $onchange =~ s/\(what\);/\(this\);/g; #ugh, terrible hack.  all onchange
+                                        #callbacks should act the same
+  $onchange = 'onChange="'. $onchange. '"';
+}
+
+my $tower_sector;
+if ( $curr_value ) {
+  $tower_sector = qsearchs('tower_sector', { 'sectornum' => $curr_value } );
+} else {
+  $tower_sector = new FS::tower_sector {};
+}
+
+my %size = ( 'title' => 12 );
+
+tie my %label, 'Tie::IxHash',
+  'sectorname'   => 'Name',
+  'ip_addr'      => 'IP Address',
+  'height'       => 'Height (feet)',
+  'freq_mhz'     => 'Freq. (MHz)',
+  'direction'    => 'Direction (&deg; from north)', # or a button to set these to 0 for omni
+  'downtilt'     => 'Downtilt (&deg; below horizontal)',
+  'width'        => 'Horiz. width (&deg; 0 - 360)',
+  'v_width'      => 'Vert. width (&deg; 0 - 360)',
+  'sector_range' => 'Range (miles)',
+  'margin'       => 'Signal margin (dB)',
+  'up_rate_limit' => 'Up rate limit (kbps)',
+  'down_rate_limit' => 'Down rate limit (kbps)',
+;
+
+my @fields = keys %label;
+
+</%init>