X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/1ae4483c6939a93f96eb6cdb02ac38c0f36479ae..13fee47ed0af8364355f2185c1eec1489a247c72:/app/assets/javascripts/index.js?ds=inline diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index ddad384ab..98f24a6e7 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -1,9 +1,11 @@ +//= require_self //= require index/browse //= require index/export //= require index/key +//= require index/notes $(document).ready(function () { - var permalinks = $("#permalink").html(); + var permalinks = $("#permalink").detach().html(); var marker; var params = OSM.mapParams(); var map = createMap("map"); @@ -34,7 +36,7 @@ $(document).ready(function () { } if (params.marker) { - marker = addMarkerToMap([params.mlat, params.mlon]); + marker = L.marker([params.mlat, params.mlon], {icon: getUserIcon()}).addTo(map); } if (params.object) { @@ -56,27 +58,31 @@ $(document).ready(function () { map.setView(centre, data.zoom); } + if (data.type && data.id) { + addObjectToMap(data, true); + } + if (marker) { - removeMarkerFromMap(marker); + map.removeLayer(marker); } - marker = addMarkerToMap(centre, getArrowIcon()); + marker = L.marker(centre, {icon: getUserIcon()}).addTo(map); }); function updateLocation() { - var center = map.getCenter(); + var center = map.getCenter().wrap(); var zoom = map.getZoom(); var layers = getMapLayers(); - var extents = map.getBounds(); + var extents = map.getBounds().wrap(); updatelinks(center.lng, center.lat, zoom, layers, - extents.getWestLng(), - extents.getSouthLat(), - extents.getEastLng(), - extents.getNorthLat(), + extents.getWest(), + extents.getSouth(), + extents.getEast(), + extents.getNorth(), params.object); var expiry = new Date(); @@ -89,10 +95,10 @@ $(document).ready(function () { var loaded = false; $("#linkloader").load(function () { loaded = true; }); - $("#linkloader").attr("src", "http://127.0.0.1:8111/load_and_zoom?left=" + extent.getWestLng() - + "&bottom=" + extent.getSouthLat() - + "&right=" + extent.getEastLng() - + "&top=" + extent.getNorthLat()); + $("#linkloader").attr("src", "http://127.0.0.1:8111/load_and_zoom?left=" + extent.getWest() + + "&bottom=" + extent.getSouth() + + "&right=" + extent.getEast() + + "&top=" + extent.getNorth()); setTimeout(function () { if (!loaded) alert(I18n.t('site.index.remote_failed')); @@ -107,14 +113,7 @@ $(document).ready(function () { remoteEditHandler(); } - $(window).resize(function() { - var centre = map.getCenter(); - var zoom = map.getZoom(); - - handleResize(); - - map.setCenter(centre, zoom); - }); + $(window).resize(handleResize); $("#search_form").submit(function () { var bounds = map.getBounds(); @@ -122,10 +121,10 @@ $(document).ready(function () { $("#sidebar_title").html(I18n.t('site.sidebar.search_results')); $("#sidebar_content").load($(this).attr("action"), { query: $("#query").val(), - minlon: bounds.getSouthWest().lng, - minlat: bounds.getSouthWest().lat, - maxlon: bounds.getNorthEast().lng, - maxlat: bounds.getNorthEast().lat + minlon: bounds.getWest(), + minlat: bounds.getSouth(), + maxlon: bounds.getEast(), + maxlat: bounds.getNorth() }, openSidebar); return false; @@ -134,4 +133,10 @@ $(document).ready(function () { if ($("#query").val()) { $("#search_form").submit(); } + + // Focus the search field for browsers that don't support + // the HTML5 'autofocus' attribute + if (!("autofocus" in document.createElement("input"))) { + $("#query").focus(); + } });