summaryrefslogtreecommitdiff
path: root/httemplate/edit/tower.html
diff options
context:
space:
mode:
authorivan <ivan>2011-12-10 00:36:47 +0000
committerivan <ivan>2011-12-10 00:36:47 +0000
commite6f7e02b32ebaa471230819d36a88f88b98bed6a (patch)
tree7af39d4c474621a698d1b2b71efb9c630aedefab /httemplate/edit/tower.html
parent980f3fdaab3a99451b83367860427a3226ab9f98 (diff)
tower tracking, RT#15538
Diffstat (limited to 'httemplate/edit/tower.html')
-rw-r--r--httemplate/edit/tower.html37
1 files changed, 37 insertions, 0 deletions
diff --git a/httemplate/edit/tower.html b/httemplate/edit/tower.html
new file mode 100644
index 000000000..c27d9d255
--- /dev/null
+++ b/httemplate/edit/tower.html
@@ -0,0 +1,37 @@
+<& elements/edit.html,
+ name_singular => 'tower',
+ table => 'tower',
+ viewall_dir => 'browse',
+ 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,
+ },
+ ],
+ labels => { 'towernum' => 'Tower',
+ 'towername' => 'Name',
+ 'sectornum' => 'Sector',
+ 'disabled' => 'Disabled',
+ },
+&>
+<%init>
+
+my $m2_error_callback = sub { # reconstruct the list
+ my ($cgi, $object) = @_;
+
+ my @fields = qw(sectorname ip_addr);
+ 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);
+};
+
+</%init>