//= require templates/browse/feature_history
$(document).ready(function () {
- $("#show_data").click(function (e) {
- $.ajax({ url: $(this).attr('href'), success: function (sidebarHtml) {
- startBrowse(sidebarHtml);
- }});
- e.preventDefault();
+ var areasHidden = false;
+
+ var dataLayer = new L.OSM.DataLayer(null, {
+ styles: {
+ way: {
+ weight: 3,
+ color: "#000000",
+ opacity: 0.4
+ },
+ area: {
+ weight: 3,
+ color: "#ff0000"
+ },
+ node: {
+ color: "#00ff00"
+ }
+ }
+ });
+
+ dataLayer.isWayArea = function () {
+ return !areasHidden && L.OSM.DataLayer.prototype.isWayArea.apply(this, arguments);
+ };
+
+ if (OSM.STATUS != 'api_offline' && OSM.STATUS != 'database_offline') {
+ map.layersControl.addOverlay(dataLayer, I18n.t("browse.start_rjs.data_layer_name"));
+ }
+
+ map.on('layeradd', function (e) {
+ if (e.layer === dataLayer) {
+ $.ajax({ url: "/browse/start", success: function (sidebarHtml) {
+ startBrowse(sidebarHtml);
+ }});
+ }
+ });
+
+ map.on('layerremove', function (e) {
+ if (e.layer === dataLayer) {
+ closeSidebar();
+ }
});
function startBrowse(sidebarHtml) {
var layersById;
var selectedLayer;
var browseObjectList;
- var areasHidden = false;
-
- var dataLayer = new L.OSM.DataLayer(null, {
- styles: {
- way: {
- weight: 3,
- color: "#000000",
- opacity: 0.4
- },
- area: {
- weight: 3,
- color: "#ff0000"
- },
- node: {
- color: "#00ff00"
- }
- }
- });
-
- dataLayer.addTo(map);
-
- dataLayer.isWayArea = function () {
- return !areasHidden && L.OSM.DataLayer.prototype.isWayArea.apply(this, arguments);
- };
var locationFilter = new L.LocationFilter({
enableButton: false,
MAX_REQUEST_AREA: <%= MAX_REQUEST_AREA.to_json %>,
SERVER_URL: <%= SERVER_URL.to_json %>,
API_VERSION: <%= API_VERSION.to_json %>,
+ STATUS: <%= STATUS.to_json %>,
apiUrl: function (object) {
var url = "/api/" + OSM.API_VERSION + "/" + object.type + "/" + object.id;
$("#sidebar").trigger("opened");
};
-$(document).ready(function () {
- $(".sidebar_close").click(function (e) {
- $("#sidebar").css("display", "none");
+function closeSidebar() {
+ $("#sidebar").css("display", "none");
- $("#sidebar").trigger("closed");
+ $("#sidebar").trigger("closed");
+}
+$(document).ready(function () {
+ $(".sidebar_close").click(function (e) {
+ closeSidebar();
e.preventDefault();
});
});
<%= javascript_include_tag "index" %>
<% end %>
-<% unless STATUS == :api_offline or STATUS == :database_offline -%>
- <% content_for :editmenu do -%>
- <li><%= link_to t("browse.start_rjs.data_layer_name"), { :controller => :browse, :action => :start }, :id => "show_data" %></li>
- <% end -%>
-<% end -%>
-
<% content_for :left_menu do %>
<li><h4><%= link_to t("site.key.map_key"), {:action => :key}, :id => "open_map_key", :title => t("site.key.map_key_tooltip") %></h4></li>
<% end %>