4 my $curuser = $FS::CurrentUser::CurrentUser;
5 my $acl_edit = $curuser->access_right('Edit FCC report configuration');
6 my $acl_edit_global = $curuser->access_right('Edit FCC report configuration for all agents');
8 unless $acl_edit or $acl_edit_global;
10 my $kml = Geo::GoogleEarth::Pluggable->new;
14 my($query) = $cgi->keywords;
15 if ( $query =~ /^(\d+)$/ || $cgi->param('zonenum') =~ /^(\d+$)/ ) {
18 my $deploy_zone = qsearchs('deploy_zone', { 'zonenum' => $zonenum })
19 or die 'unknown zonenum';
21 $deploy_zone->kml_polygon($kml);
23 } elsif ( $cgi->param('zonetype') =~ /^(\w)$/ ) {
26 my @deploy_zone = qsearch('deploy_zone', { 'zonetype' => $zonetype,
29 $_->kml_polygon($kml) foreach @deploy_zone;
32 die "no zonenum or zonetype\n";
35 my $content = $kml->archive;
37 http_header('Content-Type' => 'application/vnd.google-earth.kmz' ); #kmz
38 http_header('Content-Disposition' => "filename=$name.kmz" );
39 http_header('Content-Length' => length($content) );
40 http_header('Cache-control' => 'max-age=60' );