diff options
| -rw-r--r-- | chimere/static/chimere/js/jquery.chimere.js | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/chimere/static/chimere/js/jquery.chimere.js b/chimere/static/chimere/js/jquery.chimere.js index 06b4812..4f8c5f0 100644 --- a/chimere/static/chimere/js/jquery.chimere.js +++ b/chimere/static/chimere/js/jquery.chimere.js @@ -254,13 +254,10 @@ OpenLayers.Layer.MapQuestOSM = OpenLayers.Class(OpenLayers.Layer.XYZ, { if (!settings.edition){ methods.loadCategories(); methods.loadGeoObjects(); - // Hide popUp when clicking on map - settings.map.events.register('click', settings.map, - methods.displayMapMenu); + methods.activateContextMenu() } else { if (!settings.edition_type_is_route){ - map.events.register('click', settings.map, - methods.setMarker); + methods.activateMarkerEdit(); } else { settings.layerVectors.events.register('featuremodified', settings.layerVectors, helpers.updateRouteForm); @@ -270,6 +267,26 @@ OpenLayers.Layer.MapQuestOSM = OpenLayers.Class(OpenLayers.Layer.XYZ, { } }, // end of init + activateContextMenu: function(){ + settings.map.events.unregister('click', settings.map, + methods.setMarker); + settings.map.events.register('click', settings.map, + methods.displayMapMenu); + }, + + activateMarkerEdit: function(){ + settings.map.events.unregister('click', settings.map, + methods.displayMapMenu); + settings.map.events.register('click', settings.map, + methods.setMarker); + }, + + // init the context menu + zoomIn: function(){ + methods.mapCenter(); + settings.map.zoomIn(); + }, + // zoom in from the map menu zoomIn: function(){ methods.mapCenter(); @@ -844,8 +861,10 @@ OpenLayers.Layer.MapQuestOSM = OpenLayers.Class(OpenLayers.Layer.XYZ, { lonlat = lonlat.clone().transform(settings.map.getProjectionObject(), EPSG_DISPLAY_PROJECTION); $('#id_point').val('POINT(' + lonlat.lon + ' ' + lonlat.lat + ')'); - $('#live_latitude').val(lonlat.lat); - $('#live_longitude').val(lonlat.lon); + if($('#live_latitude').length){ + $('#live_latitude').val(lonlat.lat); + $('#live_longitude').val(lonlat.lon); + } /* zoom to the point */ if (zoom){ var bounds = settings.layerMarkers.getDataExtent(); |
