summaryrefslogtreecommitdiff
path: root/httemplate/elements/select-tower_sector.html
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate/elements/select-tower_sector.html')
-rw-r--r--httemplate/elements/select-tower_sector.html50
1 files changed, 50 insertions, 0 deletions
diff --git a/httemplate/elements/select-tower_sector.html b/httemplate/elements/select-tower_sector.html
new file mode 100644
index 000000000..1973ef9c6
--- /dev/null
+++ b/httemplate/elements/select-tower_sector.html
@@ -0,0 +1,50 @@
+% if ( ! $opt{'multiple'} ) {
+<& /elements/select-table.html,
+ table => 'tower_sector',
+ name_col => 'description',
+ order_by => 'ORDER BY towernum,sectorname',
+ empty_label => ' ',
+ @_
+&>
+% }
+% else { # currently only multiple sectors, not towers
+<& /elements/select-table.html,
+ table => 'tower',
+ name_col => 'towername',
+ id => 'towernum',
+ field => 'dummy_towernum'
+ onchange => 'change_towernum(this.value);',
+ element_etc => 'STYLE="vertical-align:top"',
+&>
+<SELECT NAME="sectornum" ID="sectornum" MULTIPLE SIZE="6"></SELECT>
+<SCRIPT TYPE="text/javascript">
+var sectors_of = <% encode_json(\%sectors_of) %>;
+var select_sectornum = document.getElementById('sectornum');
+function change_towernum(towernum) {
+ select_sectornum.options.length = 0;
+ for (var sectornum in sectors_of[towernum]) {
+ var o = document.createElement('OPTION');
+ o.value = sectornum;
+ o.text = sectors_of[towernum][sectornum];
+ o.selected = true;
+ select_sectornum.add(o, null);
+ }
+ return;
+}
+change_towernum('');
+% }
+</SCRIPT>
+<BR>
+<INPUT TYPE="checkbox" VALUE="none" NAME="sectornum" CHECKED> No sector
+<%init>
+my %opt = @_;
+
+my %sectors_of;
+if ( $opt{'multiple'} ) {
+ foreach my $sector ( qsearch('tower_sector',{}) ) {
+ $sectors_of{$sector->towernum} ||= {};
+ $sectors_of{$sector->towernum}->{$sector->sectornum} = $sector->sectorname;
+ $sectors_of{''}->{$sector->sectornum} = $sector->description;
+ }
+}
+</%init>