diff --git a/app/assets/javascripts/diary_entry.js b/app/assets/javascripts/diary_entry.js new file mode 100644 index 000000000..7dc988de7 --- /dev/null +++ b/app/assets/javascripts/diary_entry.js @@ -0,0 +1,33 @@ +var marker; + +function setLocation( e ) { + closeMapPopup(); + + var lonlat = getEventPosition(e); + + $("#latitude").val(lonlat.lat); + $("#longitude").val(lonlat.lon); + + if (marker) { + removeMarkerFromMap(marker); + } + + marker = addMarkerToMap(lonlat, null, I18n.t('diary_entry.edit.marker_text')); +} + +function openMap() { + $("#map").show(); + $("#usemap").hide(); + + var params = $("#map").data(); + var centre = new OpenLayers.LonLat(params.lon, params.lat); + var map = createMap("map"); + + setMapCenter(centre, params.zoom); + + if ($("#latitude").val() && $("#longitude").val()) { + marker = addMarkerToMap(centre, null, I18n.t('diary_entry.edit.marker_text')); + } + + map.events.register("click", map, setLocation); +} diff --git a/app/views/diary_entry/edit.html.erb b/app/views/diary_entry/edit.html.erb index 33e4d2719..e6674742f 100644 --- a/app/views/diary_entry/edit.html.erb +++ b/app/views/diary_entry/edit.html.erb @@ -1,3 +1,7 @@ +<% content_for :head do %> + <%= javascript_include_tag "diary_entry" %> +<% end %> +