2 'name_singular' => 'deployment zone',
3 'table' => 'deploy_zone',
4 'post_url' => popurl(1).'process/deploy_zone-fixed.html',
6 'description' => 'Description',
8 'dbaname' => 'Business name (if different from agent)',
9 'technology' => 'Technology',
10 'adv_speed_up' => 'Upstream',
11 'adv_speed_down' => 'Downstream',
12 'cir_speed_up' => 'Upstream',
13 'cir_speed_down' => 'Downstream',
14 'is_consumer' => 'Consumer/mass market',
15 'is_business' => 'Business/government',
19 { field => 'zonetype',
23 { field => 'servicetype',
28 { field => 'agentnum',
29 type => 'select-agent',
31 viewall_right => 'Edit FCC report configuration for all agents',
34 { field => 'technology',
36 options => [ keys(%$technology_labels) ],
37 labels => $technology_labels,
39 { field => 'is_consumer', type => 'checkbox', value=>'Y' },
40 { field => 'is_business', type => 'checkbox', value=>'Y' },
41 { type => 'tablebreak-tr-title',
42 value => 'Advertised maximum speed (Mbps)' },
45 { type => 'tablebreak-tr-title',
46 value => 'Contractually guaranteed speed (Mbps)' },
50 { type => 'tablebreak-tr-title', value => 'Census blocks'},
51 { field => 'blocknum',
52 type => 'deploy_zone_block',
53 o2m_table => 'deploy_zone_block',
55 m2_error_callback => $m2_error_callback,
61 my $curuser = $FS::CurrentUser::CurrentUser;
63 unless $curuser->access_right([
64 'Edit FCC report configuration',
65 'Edit FCC report configuration for all agents',
68 my $technology_labels = FS::part_pkg_fcc_option->technology_labels;
70 my $m2_error_callback = sub {
71 my ($cgi, $deploy_zone) = @_;
72 my @blocknums = grep {
73 /^blocknum\d+/ and length($cgi->param($_.'_censusblock'))
78 FS::deploy_zone_block->new({
79 blocknum => scalar($cgi->param($k)),
80 zonenum => $deploy_zone->zonenum,
81 censusblock => scalar($cgi->param($k.'_censusblock')),
82 censusyear => scalar($cgi->param($k.'_censusyear')),