X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/e338d1140884bb2bf3ed1b8fc85c890d0937ef8c..483854f411ce7106144883824adb7e49060424c2:/app/assets/javascripts/application.js diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 148855dd8..7e9584d09 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -1,20 +1,24 @@ //= require jquery //= require jquery_ujs -//= require jquery.autogrowtextarea //= require jquery.timers +//= require jquery.cookie //= require augment -//= require openlayers +//= require leaflet +//= require leaflet.osm +//= require leaflet.locationfilter +//= require leaflet.locate +//= require leaflet.note //= require i18n/translations -//= require globals +//= require oauth +//= require osm //= require piwik -//= require browse -//= require export //= require map -//= require key //= require menu //= require sidebar +//= require leaflet.share //= require richtext //= require resize +//= require geocoder function zoomPrecision(zoom) { var decimals = Math.pow(10, Math.floor(zoom/3)); @@ -27,12 +31,12 @@ function zoomPrecision(zoom) { * Called as the user scrolls/zooms around to aniplate hrefs of the * view tab and various other links */ -function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,objid) { +function updatelinks(loc, zoom, layers, minlon, minlat, maxlon, maxlat, object) { var toPrecision = zoomPrecision(zoom); var node; - lat = toPrecision(lat); - lon = toPrecision(lon); + var lat = toPrecision(loc.lat), + lon = toPrecision(loc.lon || loc.lng); if (minlon) { minlon = toPrecision(minlon); @@ -41,7 +45,10 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj maxlat = toPrecision(maxlat); } - $(".geolink").each(function (index, link) { + $(".geolink").each(setGeolink); + $("#shortlinkanchor").each(setShortlink); + + function setGeolink(index, link) { var args = getArgs(link.href); if ($(link).hasClass("llz")) { @@ -56,8 +63,8 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj args.layers = layers; } - if (objtype && $(link).hasClass("object")) { - args[objtype] = objid; + if (object && $(link).hasClass("object")) { + args[object.type] = object.id; } var minzoom = $(link).data("minzoom"); @@ -67,26 +74,30 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj $(link).off("click.minzoom"); if (zoom >= minzoom) { - $(link).attr("title", I18n.t("javascripts.site." + name + "_tooltip")); - $(link).removeClass("disabled"); + $(link).attr("title", I18n.t("javascripts.site." + name + "_tooltip")) + .removeClass("disabled"); } else { - $(link).on("click.minzoom", function () { alert(I18n.t("javascripts.site." + name + "_zoom_alert")); return false; }); - $(link).attr("title", I18n.t("javascripts.site." + name + "_disabled_tooltip")); - $(link).addClass("disabled"); + $(link).on("click.minzoom", minZoomAlert) + .attr("title", I18n.t("javascripts.site." + name + "_disabled_tooltip")) + .addClass("disabled"); } } link.href = setArgs(link.href, args); - }); + } - $("#shortlinkanchor").each(function () { + function minZoomAlert() { + alert(I18n.t("javascripts.site." + name + "_zoom_alert")); return false; + } + + function setShortlink() { var args = getArgs(this.href); var code = makeShortCode(lat, lon, zoom); var prefix = shortlinkPrefix(); // Add ?{node,way,relation}=id to the arguments - if (objtype && objid) { - args[objtype] = objid; + if (object) { + args[object.type] = object.id; } // This is a hack to omit the default mapnik layer from the shortlink. @@ -101,12 +112,12 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj // ?{node,way,relation}= can be safely omitted from the shortlink // which encodes lat/lon/zoom. If new URL parameters are added to // the main slippy map this needs to be changed. - if (args.layers || args[objtype]) { + if (args.layers || object) { this.href = setArgs(prefix + "/go/" + code, args); } else { this.href = prefix + "/go/" + code; } - }); + } } /* @@ -212,10 +223,3 @@ $(document).ready(function () { var auth_token = $("meta[name=csrf-token]").attr("content"); $("form input[name=authenticity_token]").val(auth_token); }); - -/* - * Enable auto expansion for all text areas - */ -$(document).ready(function () { - $("textarea").autoGrow(); -});