<iframe id="linkloader" style="display: none">
</iframe>
-<div id="browse_map">
- <% if map.instance_of? Changeset or (map.instance_of? Node and map.version > 1) or map.visible %>
+<div id="browse_map" class='clearfix content_map'>
+ <% if map.instance_of? Changeset or (map.instance_of? Node and map.version > 1) or map.visible? %>
+
+ <% content_for :head do %>
+ <%= javascript_include_tag "browse" %>
+ <% end %>
+
<%
if map.instance_of? Changeset
bbox = map.bbox.to_unscaled
:maxlon => bbox.max_lon,
:maxlat => bbox.max_lat
}
+ elsif map.instance_of? Note
+ data = {
+ :type => "note",
+ :id => map.id,
+ :lon => map.lon,
+ :lat => map.lat
+ }
else
data = {
:type => map.class.name.downcase,
<%= content_tag "div", "", :id => "small_map", :data => data %>
<span id="loading"><%= t 'browse.map.loading' %></span>
- <%= link_to t("browse.map.larger.area"),
- root_path(:box => "yes"),
- :id => "area_larger_map",
- :class => "geolink bbox" %>
- <br />
- <%= link_to h(t("browse.map.edit.area")) + content_tag(:span, "▾", :class => "menuicon"),
- edit_path,
- :id => "area_edit",
- :data => { :editor => preferred_editor },
- :class => "geolink bbox" %>
-
- <% unless map.instance_of? Changeset %>
- <br />
- <%= link_to t("browse.map.larger." + map.class.to_s.downcase),
- root_path,
- :id => "object_larger_map",
- :class => "geolink object" %>
- <br />
- <%= link_to h(t("browse.map.edit." + map.class.to_s.downcase)) + content_tag(:span, "▾", :class => "menuicon"),
+<ul class='secondary-actions clearfix'>
+ <li>
+ <% if map.instance_of? Note -%>
+ <%= link_to t("browse.map.larger.area"),
+ root_path(:notes => "yes"),
+ :id => "area_larger_map",
+ :class => "geolink bbox" %>
+ <% else -%>
+ <%= link_to t("browse.map.larger.area"),
+ root_path(:box => "yes"),
+ :id => "area_larger_map",
+ :class => "geolink bbox" %>
+ <% end -%>
+ </li>
+ <li>
+ <%= link_to h(t("browse.map.edit.area")) + content_tag(:span, "▼", :class => "menuicon"),
edit_path,
- :id => "object_edit",
+ :id => "area_edit",
:data => { :editor => preferred_editor },
- :class => "geolink object" %>
+ :class => "geolink bbox" %>
+ </li>
+</ul>
+
+ <% unless map.instance_of? Changeset %>
+ <ul class='secondary-actions clearfix'>
+ <li>
+ <%= link_to t("browse.map.larger." + map.class.to_s.downcase),
+ root_path,
+ :id => "object_larger_map",
+ :class => "geolink object" %>
+ </li>
+ <li>
+ <%= link_to h(t("browse.map.edit." + map.class.to_s.downcase)) + content_tag(:span, "▼", :class => "menuicon"),
+ edit_path,
+ :id => "object_edit",
+ :data => { :editor => preferred_editor },
+ :class => "geolink object" %>
+ </li>
+ </ul>
<% end %>
<% else %>
<div id="area_edit_menu" class="menu">
<ul>
- <% Editors::ALL_EDITORS.each do |editor| %>
+ <% Editors::RECOMMENDED_EDITORS.each do |editor| %>
<li><%= link_to t('layouts.edit_with', :editor => t("editor.#{editor}.description")),
edit_path(:editor => editor),
:data => {:editor => editor},
<div id="object_edit_menu" class="menu">
<ul>
- <% Editors::ALL_EDITORS.each do |editor| %>
+ <% Editors::RECOMMENDED_EDITORS.each do |editor| %>
<li><%= link_to t('layouts.edit_with', :editor => t("editor.#{editor}.description")),
edit_path(:editor => editor),
:data => {:editor => editor},
<% end %>
</ul>
</div>
-
-<% if map.instance_of? Changeset or (map.instance_of? Node and map.version > 1) or map.visible %>
- <script type="text/javascript">
- function remoteEditHandler(event, bbox, select) {
- var left = bbox.left - 0.0001;
- var top = bbox.top + 0.0001;
- var right = bbox.right + 0.0001;
- var bottom = bbox.bottom - 0.0001;
- var loaded = false;
-
- $("#linkloader").load(function () { loaded = true; });
-
- if (select) {
- $("#linkloader").attr("src", "http://127.0.0.1:8111/load_and_zoom?left=" + left + "&top=" + top + "&right=" + right + "&bottom=" + bottom + "&select=" + select);
- } else {
- $("#linkloader").attr("src", "http://127.0.0.1:8111/load_and_zoom?left=" + left + "&top=" + top + "&right=" + right + "&bottom=" + bottom);
- }
-
- setTimeout(function () {
- if (!loaded) alert(I18n.t('site.index.remote_failed'));
- }, 1000);
-
- return false;
- }
-
- function init() {
- var map = createMap("small_map", {
- controls: [ new OpenLayers.Control.Navigation() ]
- });
-
- var params = $("#small_map").data();
- if (params.type == "changeset") {
- var bbox = new OpenLayers.Bounds(params.minlon, params.minlat, params.maxlon, params.maxlat);
- var centre = bbox.getCenterLonLat();
-
- map.zoomToExtent(proj(bbox));
- addBoxToMap(bbox);
-
- $("#loading").hide();
- $("#browse_map .geolink").show();
-
- $("a[data-editor=remote]").click(function (event) {
- return remoteEditHandler(event, bbox);
- });
-
- updatelinks(centre.lon, centre.lat, 16, null, params.minlon, params.minlat, params.maxlon, params.maxlat);
- } else {
- var url = "/api/" + OSM.API_VERSION + "/" + params.type + "/" + params.id;
-
- if (params.type != "node") {
- url += "/full";
- } else if (!params.visible) {
- var previous_version = params.version - 1;
- url += "/" + previous_version;
- }
-
- $("#object_larger_map").hide();
- $("#object_edit").hide();
-
- addObjectToMap(url, true, function(extent) {
- $("#loading").hide();
- $("#browse_map .geolink").show();
-
- if (extent) {
- extent.transform(map.getProjectionObject(), map.displayProjection);
-
- var centre = extent.getCenterLonLat();
-
- $("a.bbox[data-editor=remote]").click(function (event) {
- return remoteEditHandler(event, extent);
- });
-
- $("a.object[data-editor=remote]").click(function (event) {
- return remoteEditHandler(event, extent, params.type + params.id);
- });
-
- $("#object_larger_map").show();
- $("#object_edit").show();
-
- updatelinks(centre.lon, centre.lat, 16, null, extent.left, extent.bottom, extent.right, extent.top, params.type, params.id);
- } else {
- $("#small_map").hide();
- }
- });
- }
-
- createMenu("area_edit", "area_edit_menu", "right");
- createMenu("object_edit", "object_edit_menu", "right");
- }
-
- window.onload = init;
- </script>
-<% end %>