Inline map.js marker functions
authorJohn Firebaugh <john.firebaugh@gmail.com>
Thu, 8 Nov 2012 21:26:29 +0000 (13:26 -0800)
committerJohn Firebaugh <john.firebaugh@gmail.com>
Fri, 9 Nov 2012 20:59:31 +0000 (12:59 -0800)
app/assets/javascripts/diary_entry.js
app/assets/javascripts/index.js
app/assets/javascripts/map.js.erb
app/assets/javascripts/user.js

index 30038a0afdbc51894930ca11b2600c4cbfd063bd..a001d7482d7b4fb0e47d9054fad47066081aa653 100644 (file)
@@ -6,10 +6,11 @@ $(document).ready(function () {
     $("#longitude").val(e.latlng.lng);
 
     if (marker) {
-      removeMarkerFromMap(marker);
+      map.removeLayer(marker);
     }
 
-    marker = addMarkerToMap(e.latlng, null, I18n.t('diary_entry.edit.marker_text'));
+    marker = L.marker(e.latlng).addTo(map)
+      .bindPopup(I18n.t('diary_entry.edit.marker_text'));
   }
 
   $("#usemap").click(function (e) {
@@ -25,7 +26,8 @@ $(document).ready(function () {
     map.setView(centre, params.zoom);
 
     if ($("#latitude").val() && $("#longitude").val()) {
-      marker = addMarkerToMap(centre, null, I18n.t('diary_entry.edit.marker_text'));
+      marker = L.marker(centre).addTo(map)
+        .bindPopup(I18n.t('diary_entry.edit.marker_text'));
     }
 
     map.on("click", setLocation);
index 4f0dfb148349acc40081eb99668eff02a4fbf51b..28659a931538c6d810b6fb5825ad1982641b3757 100644 (file)
@@ -34,7 +34,7 @@ $(document).ready(function () {
   }
 
   if (params.marker) {
-    marker = addMarkerToMap([params.mlat, params.mlon]);
+    marker = L.marker([params.mlat, params.mlon]).addTo(map);
   }
 
   if (params.object) {
@@ -57,10 +57,10 @@ $(document).ready(function () {
     }
 
     if (marker) {
-      removeMarkerFromMap(marker);
+      map.removeLayer(marker);
     }
 
-    marker = addMarkerToMap(centre, getArrowIcon());
+    marker = L.marker(centre, {icon: getArrowIcon()}).addTo(map);
   });
 
   function updateLocation() {
index 520e9296e220183ec96604ba750c9d2018bfb3e3..ce75c1700a7fd5303550ce1331b56689a24bac79 100644 (file)
@@ -120,20 +120,6 @@ function getArrowIcon() {
   });
 }
 
-function addMarkerToMap(position, icon, description) {
-  var marker = L.marker(position, icon ? {icon: icon} : null).addTo(map);
-
-  if (description) {
-    marker.bindPopup(description);
-  }
-
-  return marker;
-}
-
-function removeMarkerFromMap(marker) {
-  map.removeLayer(marker);
-}
-
 function addObjectToMap(object, zoom, callback) {
   $.ajax({
     url: OSM.apiUrl(object),
index e5620b0a30dc6048b6009f26dd8657639266c573..674204d7b3fad32b37ac6d74b4d012e6bcd6a4df 100644 (file)
@@ -14,7 +14,7 @@ $(document).ready(function () {
     var marker;
 
     if (OSM.home) {
-      marker = addMarkerToMap([OSM.home.lat, OSM.home.lon]);
+      marker = L.marker([OSM.home.lat, OSM.home.lon]).addTo(map);
     }
 
     map.on("click", function (e) {
@@ -24,17 +24,18 @@ $(document).ready(function () {
         $('#home_lon').val(e.latlng.lng);
 
         if (marker) {
-          removeMarkerFromMap(marker);
+          map.removeLayer(marker);
         }
 
-        marker = addMarkerToMap(e.latlng);
+        marker = L.marker(e.latlng).addTo(map);
       }
     });
   } else {
     $("[data-user]").each(function () {
       var user = $(this).data('user');
       if (user.lon && user.lat) {
-        addMarkerToMap([user.lat, user.lon], L.icon({iconUrl: user.icon}), user.description);
+        L.marker([user.lat, user.lon], {icon: L.icon({iconUrl: user.icon})}).addTo(map)
+          .bindPopup(user.description);
       }
     });
   }