diff options
Diffstat (limited to 'httemplate/browse/deploy_zone.html')
-rw-r--r-- | httemplate/browse/deploy_zone.html | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/httemplate/browse/deploy_zone.html b/httemplate/browse/deploy_zone.html new file mode 100644 index 000000000..ddfbde43d --- /dev/null +++ b/httemplate/browse/deploy_zone.html @@ -0,0 +1,126 @@ +<& /elements/header.html, 'Deployment zones' &> +<& /elements/menubar.html, + 'Add a new fixed broadband zone' => $p.'edit/deploy_zone-fixed.html', + 'Add a new mobile zone' => $p.'edit/deploy_zone-mobile.html', +&> +<P><FONT SIZE="+1"><B>Fixed Broadband Zones</B></FONT></P> +<& elements/browse.html, + name_singular => 'zone', + query => { table => 'deploy_zone', + hashref => { zonetype => 'B' }, + }, + count_query => "SELECT COUNT(*) FROM deploy_zone WHERE zonetype = 'B'", + agent_virt => 1, + header => [ '#', + 'Description', + 'Technology', + 'Market', + 'Advertised Mbps', + 'Contractual Mbps', + 'Census blocks', + ], + fields => [ 'zonenum', + 'description', + sub { my $self = shift; + $tech_label->{$self->technology} }, + sub { my $self = shift; + join( ' / ', + $self->is_consumer ? 'consumer' : (), + $self->is_business ? 'business' : () + ) + }, + sub { my $self = shift; + join( ' / ', grep $_, + $self->adv_speed_down, + $self->adv_speed_up + ) + }, + sub { my $self = shift; + join( ' / ', grep $_, + $self->cir_speed_down, + $self->cir_speed_up + ) + }, + sub { my $self = shift; + FS::deploy_zone_block->count('zonenum = '.$self->zonenum) + }, + ], + sort_fields => [ 'zonenum', + 'description', + 'technology', + '(is_consumer is not null, is_business is not null)', + '(adv_speed_down, adv_speed_up)', + '(cir_speed_down, cir_speed_up)', + ], + links => [ '', $link_fixed, ], + align => 'clllllr', + nohtmlheader => 1, + disable_maxselect => 1, + disable_total => 1, +&> +<P><FONT SIZE="+1"><B>Mobile Zones</B></FONT></P> +<& elements/browse.html, + name_singular => 'zone', + query => { table => 'deploy_zone', + hashref => { zonetype => 'P' }, + }, + count_query => "SELECT COUNT(*) FROM deploy_zone WHERE zonetype = 'P'", + agent_virt => 1, + header => [ '#', + 'Description', + 'Technology', + 'Spectrum', + 'Service Type', + 'Advertised Mbps', + 'Vertices', # number of vertices? not so useful + ], + fields => [ 'zonenum', + 'description', + sub { my $self = shift; + $tech_label->{$self->technology} }, + sub { my $self = shift; + $spec_label->{$self->spectrum} }, + sub { my $self = shift; + join( ' / ', + $self->is_voice ? 'voice' : (), + $self->is_broadband ? 'broadband' : (), + ) + }, + sub { my $self = shift; + join( ' / ', grep $_, + $self->adv_speed_down, + $self->adv_speed_up + ) + }, + sub { my $self = shift; + FS::deploy_zone_vertex->count('zonenum = '.$self->zonenum) + }, + ], + sort_fields => [ 'zonenum', + 'description', + 'technology', + 'spectrum', + '(is_voice is not null, is_broadband is not null)', + '(adv_speed_down, adv_speed_up)', + ], + links => [ '', $link_mobile, ], + align => 'clllllr', + nohtmlheader => 1, + disable_maxselect => 1, + disable_total => 1, +&> + +<& /elements/footer.html &> +<%init> +my $curuser = $FS::CurrentUser::CurrentUser; +my $acl_edit = $curuser->access_right('Edit FCC report configuration'); +my $acl_edit_global = $curuser->access_right('Edit FCC report configuration for all agents'); +die "access denied" + unless $acl_edit or $acl_edit_global; + +my $link_fixed = [ $p.'edit/deploy_zone-fixed.html?', 'zonenum' ]; +my $link_mobile= [ $p.'edit/deploy_zone-mobile.html?', 'zonenum' ]; + +my $tech_label = FS::part_pkg_fcc_option->technology_labels; +my $spec_label = FS::part_pkg_fcc_option->spectrum_labels; +</%init> |