71873: GlobalVision - directions
[freeside.git] / httemplate / view / map.html
1 %# the actual page
2 <& /elements/header-popup.html, {
3      title => '',#$name,
4      head  => include('.head'),
5      etc   => 'onload="initialize()"',
6      nobr  => 1,
7    }
8 &>
9
10 <div id="map_canvas"></div>
11
12 <%def .head>
13 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
14
15 <style type="text/css">
16 html { height: 100% }
17
18 body { height: 100%; margin: 0px; padding: 0px }
19
20 #map_canvas { height: 100%; }
21
22 @media print { #map_canvas { height: 500px; margin: 0; } }
23 </style>
24
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 %>">
28 </script>
29
30 <script type="text/javascript">
31 var lengthLine=0;
32 var map;
33
34 function initialize() {
35   var latlng = new google.maps.LatLng(<%$lat%>, <%$lon%>);
36   var myOptions = {
37     center: latlng,
38     zoom: 14,
39     rotateControl: true,
40     mapTypeId: google.maps.MapTypeId.ROADMAP
41   };
42
43   map = new google.maps.Map(
44     document.getElementById("map_canvas"),
45     myOptions
46   );
47   map.setOptions( {rotateControl : true });
48
49   var markerOptions = {
50     map: map,
51     position: latlng,
52     title: <%$name |js_string%>
53   };
54   var marker = new google.maps.Marker(markerOptions);
55 }
56 </script>
57 </%def>
58 <%shared>
59 my ($lat, $lon, $name);
60 </%shared>
61 <%init>
62
63 $name = $cgi->param('name');
64
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";
69
70 </%init>