<& elements/edit.html, 'name_singular' => 'deployment zone', 'table' => 'deploy_zone', 'post_url' => popurl(1).'process/deploy_zone-fixed.html', 'viewall_dir' => 'browse', 'labels' => { 'description' => 'Description', 'agentnum' => 'Agent', 'dbaname' => 'Business name (if different from agent)', 'technology' => 'Technology', 'adv_speed_up' => 'Upstream', 'adv_speed_down' => 'Downstream', 'cir_speed_up' => 'Upstream', 'cir_speed_down' => 'Downstream', 'is_consumer' => 'Consumer/mass market', 'is_business' => 'Business/government', 'blocknum' => '', 'active_date' => 'Active since', 'file' => 'Import blocks from text file', 'censusyear' => 'as census year', }, 'fields' => [ { field => 'zonetype', type => 'hidden', value => 'B' }, { field => 'is_broadband', type => 'hidden', value => 'Y', }, 'description', { field => 'active_date', type => 'input-date-field', curr_value_callback => sub { my ($cgi, $object) = @_; $cgi->param('active_date') || $object->active_date || time; }, }, { field => 'agentnum', type => 'select-agent', disable_empty => 1, viewall_right => 'Edit FCC report configuration for all agents', }, 'dbaname', { field => 'technology', type => 'select', options => [ map { @$_ } values(%$media_types) ], labels => $technology_labels, }, { field => 'is_consumer', type => 'checkbox', value=>'Y' }, { field => 'is_business', type => 'checkbox', value=>'Y' }, { type => 'tablebreak-tr-title', value => 'Advertised maximum speed (Mbps)' }, 'adv_speed_down', 'adv_speed_up', { type => 'tablebreak-tr-title', value => 'Contractually guaranteed speed (Mbps)' }, 'cir_speed_down', 'cir_speed_up', { type => 'tablebreak-tr-title', value => 'Footprint'}, { field => 'vertices', type => 'polygon', curr_value_callback => sub { my ($cgi, $object) = @_; $cgi->param('vertices') || $object->vertices_json; }, } # # { type => 'tablebreak-tr-title', value => 'Census blocks'}, # { field => 'file', # type => 'file-upload', # }, # { field => 'format', # type => 'hidden', # value => 'plain', # }, # { field => 'censusyear', # type => 'hidden', # options => [ '', qw( 2013 2012 2011 ) ], # }, # # { type => 'tablebreak-tr-title', value => '', }, # { field => 'blocknum', # type => 'deploy_zone_block', # o2m_table => 'deploy_zone_block', # m2_label => ' ', # m2_error_callback => $m2_error_callback, # }, ], &> <%init> my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" unless $curuser->access_right([ 'Edit FCC report configuration', 'Edit FCC report configuration for all agents', ]); my $technology_labels = FS::part_pkg_fcc_option->technology_labels; my $media_types = FS::part_pkg_fcc_option->media_types; delete $media_types->{'Mobile Wireless'}; # cause this is the fixed zone page #my $m2_error_callback = sub { # my ($cgi, $deploy_zone) = @_; # my @blocknums = grep { # /^blocknum\d+/ and length($cgi->param($_.'_censusblock')) # } $cgi->param; # # sort { $a->censusblock <=> $b->censusblock } # map { # my $k = $_; # FS::deploy_zone_block->new({ # blocknum => scalar($cgi->param($k)), # zonenum => $deploy_zone->zonenum, # censusblock => scalar($cgi->param($k.'_censusblock')), # censusyear => scalar($cgi->param($k.'_censusyear')), # }) # } @blocknums; #};