Port embed.html to leaflet
[rails.git] / public / export / embed.html
1 <!DOCTYPE html>
2 <html xmlns="http://www.w3.org/1999/xhtml">
3   <head>
4     <meta charset="utf-8">
5     <title>OpenStreetMap Embedded</title>
6     <style type="text/css">
7         html {
8             width: 100%;
9             height: 100%;
10         }
11         body {
12             width: 100%;
13             height: 100%;
14             margin: 0px;
15         }
16         #map {
17             width: 100%;
18             height: 100%;
19         }
20     </style>
21     <link href="/assets/leaflet.css" media="screen" rel="stylesheet" type="text/css">
22     <!--[if IE]>
23     <link href="/assets/leaflet.ie.css" media="screen" rel="stylesheet" type="text/css" />
24      <![endif]-->
25     <script src="/assets/leaflet.js"></script>
26     <script src="/assets/leaflet.osm.js"></script>
27   </head>
28
29   <body>
30     <div id="map"></div>
31     <script>
32       var query = (window.location.search || '?').substr(1),
33           args  = {};
34
35       query.replace(/([^&=]+)=?([^&]*)(?:&+|$)/g, function(match, key, value) {
36         value = value.split(",");
37         if (value.length == 1)
38           value = value[0];
39         args[key] = value;
40       });
41
42       var map = L.map("map");
43       map.attributionControl.setPrefix('');
44
45       if (!args.layer || args.layer == "mapnik" || args.layer == "osmarender") {
46         new L.OSM.Mapnik().addTo(map);
47       } else if (args.layer == "cyclemap" || args.layer == "cycle map") {
48         new L.OSM.CycleMap().addTo(map);
49       } else if (args.layer == "transportmap") {
50         new L.OSM.TransportMap().addTo(map);
51       } else if (args.layer == "mapquest") {
52         new L.OSM.MapQuestOpen().addTo(map);
53       }
54
55       if (args.marker) {
56         L.marker(args.marker).addTo(map);
57       }
58
59       if (args.bbox) {
60         map.fitBounds([L.latLng(args.bbox[1], args.bbox[0]),
61                        L.latLng(args.bbox[3], args.bbox[2])])
62       } else {
63         map.fitWorld();
64       }
65     </script>
66   </body>
67 </html>