2 <& /elements/header-popup.html, {
4 head => include('.head'),
5 etc => 'onload="initialize()"',
10 <div id="map_canvas"></div>
13 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
15 <style type="text/css">
18 body { height: 100%; margin: 0px; padding: 0px }
20 #map_canvas { height: 100%; }
22 @media print { #map_canvas { height: 500px; margin: 0; } }
25 % my $conf = new FS::Conf;
26 % my $apikey = $conf->config('google_maps_api_key');
27 <script type="text/javascript" src="https://maps.google.com/maps/api/js?v=3&key=<% $apikey %>">
30 <script type="text/javascript">
34 function initialize() {
35 var latlng = new google.maps.LatLng(<%$lat%>, <%$lon%>);
40 mapTypeId: google.maps.MapTypeId.ROADMAP
43 map = new google.maps.Map(
44 document.getElementById("map_canvas"),
47 map.setOptions( {rotateControl : true });
52 title: <%$name |js_string%>
54 var marker = new google.maps.Marker(markerOptions);
59 my ($lat, $lon, $name);
63 $name = $cgi->param('name');
65 $lat = $cgi->param('lat');
66 $lon = $cgi->param('lon');
67 $lat =~ /^-?\d+(\.\d+)?$/ or die "bad latitude: $lat";
68 $lon =~ /^-?\d+(\.\d+)?$/ or die "bad longitude: $lat";