Advertisement
jackiboi

index.html

May 30th, 2013
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 2.92 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.   <meta charset="utf-8" />
  5.   <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  6.   <link rel="stylesheet" href="css/leaflet.css" type="text/css" />
  7.   <script src="js/jquery.js" type="text/javascript"></script>
  8. </head>
  9. <body>
  10.   <div id="map"></div>
  11.   <script src="js/jsapi.js" type="text/javascript"></script>
  12.   <script src="js/leaflet.js" type="text/javascript"></script>
  13.   <script src="js/leaflet-ajax.js" type="text/javascript"></script>
  14.   <script src="js/cordova-2.7.0.js" type="text/javascript"></script>
  15.   <script type="text/javascript">
  16.  
  17.   var me = L.icon({
  18.     iconUrl: 'img/marker-icon.png',
  19.     shadowUrl: 'img/marker-shadow.png',
  20.  
  21.     iconSize:     [38, 95], // size of the icon
  22.     shadowSize:   [50, 64], // size of the shadow
  23.     iconAnchor:   [22, 94], // point of the icon which will correspond to marker's location
  24.     shadowAnchor: [4, 62],  // the same for the shadow
  25.     popupAnchor:  [-3, -76] // point from which the popup should open relative to the iconAnchor
  26. });
  27.  
  28.   // Wait for Cordova to load
  29.   //
  30.   document.addEventListener("deviceready", onDeviceReady, false);
  31.  
  32.   // Cordova is ready
  33.   //
  34.   function onDeviceReady() {
  35.     navigator.geolocation.getCurrentPosition(onSuccess, onError);
  36.   }
  37.  
  38.   // onSuccess Geolocation
  39.   //
  40.   function onSuccess(position) {
  41.     var myCoords = [position.coords.latitude, position.coords.longitude];
  42.  
  43.   // Skapar kartan, ger centrering på variablerna ovan
  44.   //
  45.   var map = L.map('map').setView([myCoords[0], myCoords[1]], 11);
  46.  
  47.     // Hämtar kartbilder från en API
  48.     L.tileLayer('http://{s}.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/997/256/{z}/{x}/{y}.png', {
  49.       maxZoom: 20
  50.     }).addTo(map);
  51.  
  52.     // Placerar en markering på kartan där jag är
  53.     //
  54.     L.marker([myCoords[0], myCoords[1]], {icon: me}).addTo(map).bindPopup("<center><b>Jag</b></center>");
  55.   }
  56.  
  57.     // onError Callback receives a PositionError object
  58.     //
  59.     function onError(error) {
  60.       alert("Något gick snett. Maila oss vad som hände!");
  61.     }
  62.  
  63.   // Kallar funktionen som hämtar förare från vår API
  64.   //
  65.   driversRealtime();
  66.    
  67.   // Förare hämtas från vår API och skrivs ut på kartan
  68.   //
  69.   function driversRealtime() {
  70.    setInterval(function () {
  71.     var url = "http://blackcab.didair.se/api/drivers";
  72.     var name;
  73.     var img;
  74.  
  75.     $.getJSON(url,
  76.     function (response) {
  77.         name = response.drivers[0].name;
  78.         img = response.drivers[0].img;
  79.         for (var i = 0; i < response.drivers.length; i++) {
  80.            var driver = response.drivers[i];
  81.            var m = L.marker(new L.LatLng(driver.currentLat, driver.currentLon)).addTo(map)
  82.                .bindPopup("<center><b>" + driver.name + "<\/b><\/center>");
  83.          }
  84.       });
  85.     // Loopar funktionen var 3:e sekund
  86.     //
  87.     }, 3000);
  88.   }
  89.   </script>
  90. </body>
  91. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement