From eb7678145a87c1b9e3cd7ff2d3b5dc08132e4b51 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Sat, 6 Apr 2019 15:59:34 +0100 Subject: [PATCH] Use double quotes consistently in javascript code --- app/assets/javascripts/application.js | 20 +- app/assets/javascripts/diary_entry.js | 6 +- app/assets/javascripts/fixthemap.js | 4 +- app/assets/javascripts/id.js | 12 +- app/assets/javascripts/index.js | 116 ++--- app/assets/javascripts/index/browse.js | 18 +- app/assets/javascripts/index/changeset.js | 6 +- app/assets/javascripts/index/directions.js | 98 ++--- .../javascripts/index/directions/fossgis.js | 146 +++---- .../index/directions/graphhopper.js | 2 +- app/assets/javascripts/index/history.js | 20 +- app/assets/javascripts/index/new_note.js | 16 +- app/assets/javascripts/index/note.js | 16 +- app/assets/javascripts/index/notes.js | 4 +- app/assets/javascripts/index/query.js | 6 +- app/assets/javascripts/index/search.js | 8 +- app/assets/javascripts/leaflet.key.js | 68 +-- app/assets/javascripts/leaflet.layers.js | 144 +++---- app/assets/javascripts/leaflet.map.js | 28 +- app/assets/javascripts/leaflet.note.js | 22 +- app/assets/javascripts/leaflet.query.js | 28 +- app/assets/javascripts/leaflet.share.js | 398 +++++++++--------- app/assets/javascripts/leaflet.sidebar.js | 8 +- app/assets/javascripts/leaflet.zoom.js | 32 +- app/assets/javascripts/oauth.js | 2 +- app/assets/javascripts/router.js | 40 +- app/assets/javascripts/user.js | 30 +- app/assets/javascripts/welcome.js | 14 +- config/eslint.json | 1 + 29 files changed, 657 insertions(+), 656 deletions(-) diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index ebb0ff580..d73b3c69c 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -17,7 +17,7 @@ //= require richtext //= require querystring -var querystring = require('querystring-component'); +var querystring = require("querystring-component"); /* * Called as the user scrolls/zooms around to maniplate hrefs of the @@ -39,11 +39,11 @@ window.updateLinks = function (loc, zoom, layers, object) { } var query = querystring.stringify(args); - if (query) href += '?' + query; + if (query) href += "?" + query; args = { lat: loc.lat, - lon: 'lon' in loc ? loc.lon : loc.lng, + lon: "lon" in loc ? loc.lon : loc.lng, zoom: zoom }; @@ -57,13 +57,13 @@ window.updateLinks = function (loc, zoom, layers, object) { }); var editDisabled = zoom < 13; - $('#edit_tab') - .tooltip({placement: 'bottom'}) - .off('click.minzoom') - .on('click.minzoom', function() { return !editDisabled; }) - .toggleClass('disabled', editDisabled) - .attr('data-original-title', editDisabled ? - I18n.t('javascripts.site.edit_disabled_tooltip') : ''); + $("#edit_tab") + .tooltip({placement: "bottom"}) + .off("click.minzoom") + .on("click.minzoom", function() { return !editDisabled; }) + .toggleClass("disabled", editDisabled) + .attr("data-original-title", editDisabled ? + I18n.t("javascripts.site.edit_disabled_tooltip") : ""); }; window.maximiseMap = function () { diff --git a/app/assets/javascripts/diary_entry.js b/app/assets/javascripts/diary_entry.js index f13706971..73a179ba9 100644 --- a/app/assets/javascripts/diary_entry.js +++ b/app/assets/javascripts/diary_entry.js @@ -10,7 +10,7 @@ $(document).ready(function () { } marker = L.marker(e.latlng, {icon: OSM.getUserIcon()}).addTo(map) - .bindPopup(I18n.t('diary_entries.edit.marker_text')); + .bindPopup(I18n.t("diary_entries.edit.marker_text")); } $("#usemap").click(function (e) { @@ -21,7 +21,7 @@ $(document).ready(function () { var params = $("#map").data(); var centre = [params.lat, params.lon]; - var position = $('html').attr('dir') === 'rtl' ? 'topleft' : 'topright'; + var position = $("html").attr("dir") === "rtl" ? "topleft" : "topright"; map = L.map("map", { attributionControl: false, @@ -35,7 +35,7 @@ $(document).ready(function () { if ($("#latitude").val() && $("#longitude").val()) { marker = L.marker(centre, {icon: OSM.getUserIcon()}).addTo(map) - .bindPopup(I18n.t('diary_entries.edit.marker_text')); + .bindPopup(I18n.t("diary_entries.edit.marker_text")); } map.on("click", setLocation); diff --git a/app/assets/javascripts/fixthemap.js b/app/assets/javascripts/fixthemap.js index e2a503ad3..9bfb01ad5 100644 --- a/app/assets/javascripts/fixthemap.js +++ b/app/assets/javascripts/fixthemap.js @@ -1,12 +1,12 @@ $(document).ready(function() { var params = OSM.params(); - var url = '/note/new'; + var url = "/note/new"; if (params.lat && params.lon) { params.lat = parseFloat(params.lat); params.lon = parseFloat(params.lon); params.zoom = params.zoom || 17; url += OSM.formatHash(params); } - $('.icon.note').attr('href', url); + $(".icon.note").attr("href", url); }); diff --git a/app/assets/javascripts/id.js b/app/assets/javascripts/id.js index dd7cd3325..fbe810d28 100644 --- a/app/assets/javascripts/id.js +++ b/app/assets/javascripts/id.js @@ -5,11 +5,11 @@ document.addEventListener("DOMContentLoaded", function() { var container = document.getElementById("id-container"); - if (typeof iD === 'undefined' || !iD.Detect().support) { - container.innerHTML = 'This editor is supported ' + - 'in Firefox, Chrome, Safari, Opera, Edge, and Internet Explorer 11. ' + - 'Please upgrade your browser or use Potlatch 2 to edit the map.'; - container.className = 'unsupported'; + if (typeof iD === "undefined" || !iD.Detect().support) { + container.innerHTML = "This editor is supported " + + "in Firefox, Chrome, Safari, Opera, Edge, and Internet Explorer 11. " + + "Please upgrade your browser or use Potlatch 2 to edit the map."; + container.className = "unsupported"; } else { var id = iD.Context() .embed(true) @@ -24,7 +24,7 @@ document.addEventListener("DOMContentLoaded", function() { oauth_token_secret: container.dataset.tokenSecret }); - id.map().on('move.embed', parent.$.throttle(250, function() { + id.map().on("move.embed", parent.$.throttle(250, function() { if (id.inIntro()) return; var zoom = ~~id.map().zoom(), center = id.map().center(), diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index 2678ba282..cce07f324 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -37,18 +37,18 @@ $(document).ready(function () { clearTimeout(loaderTimeout); loaderTimeout = setTimeout(function() { - $('#sidebar_loader').show(); + $("#sidebar_loader").show(); }, 200); // IE<10 doesn't respect Vary: X-Requested-With header, so // prevent caching the XHR response as a full-page URL. - if (path.indexOf('?') >= 0) { - path += '&xhr=1'; + if (path.indexOf("?") >= 0) { + path += "&xhr=1"; } else { - path += '?xhr=1'; + path += "?xhr=1"; } - $('#sidebar_content') + $("#sidebar_content") .empty(); $.ajax({ @@ -56,24 +56,24 @@ $(document).ready(function () { dataType: "html", complete: function(xhr) { clearTimeout(loaderTimeout); - $('#flash').empty(); - $('#sidebar_loader').hide(); + $("#flash").empty(); + $("#sidebar_loader").hide(); var content = $(xhr.responseText); - if (xhr.getResponseHeader('X-Page-Title')) { - var title = xhr.getResponseHeader('X-Page-Title'); + if (xhr.getResponseHeader("X-Page-Title")) { + var title = xhr.getResponseHeader("X-Page-Title"); document.title = decodeURIComponent(title); } - $('head') - .find('link[type="application/atom+xml"]') + $("head") + .find("link[type=\"application/atom+xml\"]") .remove(); - $('head') - .append(content.filter('link[type="application/atom+xml"]')); + $("head") + .append(content.filter("link[type=\"application/atom+xml\"]")); - $('#sidebar_content').html(content.not('link[type="application/atom+xml"]')); + $("#sidebar_content").html(content.not("link[type=\"application/atom+xml\"]")); if (callback) { callback(); @@ -84,7 +84,7 @@ $(document).ready(function () { var params = OSM.mapParams(); - map.attributionControl.setPrefix(''); + map.attributionControl.setPrefix(""); map.updateLayers(params.layers); @@ -94,32 +94,32 @@ $(document).ready(function () { } }); - var position = $('html').attr('dir') === 'rtl' ? 'topleft' : 'topright'; + var position = $("html").attr("dir") === "rtl" ? "topleft" : "topright"; L.OSM.zoom({position: position}) .addTo(map); var locate = L.control.locate({ position: position, - icon: 'icon geolocate', - iconLoading: 'icon geolocate', + icon: "icon geolocate", + iconLoading: "icon geolocate", strings: { - title: I18n.t('javascripts.map.locate.title'), - popup: I18n.t('javascripts.map.locate.popup') + title: I18n.t("javascripts.map.locate.title"), + popup: I18n.t("javascripts.map.locate.popup") } }).addTo(map); var locateContainer = locate.getContainer(); $(locateContainer) - .removeClass('leaflet-control-locate leaflet-bar') - .addClass('control-locate') + .removeClass("leaflet-control-locate leaflet-bar") + .addClass("control-locate") .children("a") - .attr('href', '#') - .removeClass('leaflet-bar-part leaflet-bar-part-single') - .addClass('control-button'); + .attr("href", "#") + .removeClass("leaflet-bar-part leaflet-bar-part-single") + .addClass("control-button"); - var sidebar = L.OSM.sidebar('#map-ui') + var sidebar = L.OSM.sidebar("#map-ui") .addTo(map); L.OSM.layers({ @@ -154,7 +154,7 @@ $(document).ready(function () { OSM.initializeContextMenu(map); - if (OSM.STATUS !== 'api_offline' && OSM.STATUS !== 'database_offline') { + if (OSM.STATUS !== "api_offline" && OSM.STATUS !== "database_offline") { OSM.initializeNotes(map); if (params.layers.indexOf(map.noteLayer.options.code) >= 0) { map.addLayer(map.noteLayer); @@ -170,51 +170,51 @@ $(document).ready(function () { } } - var placement = $('html').attr('dir') === 'rtl' ? 'right' : 'left'; - $('.leaflet-control .control-button').tooltip({placement: placement, container: 'body'}); + var placement = $("html").attr("dir") === "rtl" ? "right" : "left"; + $(".leaflet-control .control-button").tooltip({placement: placement, container: "body"}); var expiry = new Date(); expiry.setYear(expiry.getFullYear() + 10); - map.on('moveend layeradd layerremove', function() { + map.on("moveend layeradd layerremove", function() { updateLinks( map.getCenter().wrap(), map.getZoom(), map.getLayersCode(), map._object); - $.removeCookie('_osm_location'); - $.cookie('_osm_location', OSM.locationCookie(map), { expires: expiry, path: '/' }); + $.removeCookie("_osm_location"); + $.cookie("_osm_location", OSM.locationCookie(map), { expires: expiry, path: "/" }); }); - if ($.cookie('_osm_welcome') !== 'hide') { - $('.welcome').addClass('visible'); + if ($.cookie("_osm_welcome") !== "hide") { + $(".welcome").addClass("visible"); } - $('.welcome .close-wrap').on('click', function() { - $('.welcome').removeClass('visible'); - $.cookie('_osm_welcome', 'hide', { expires: expiry, path: '/' }); + $(".welcome .close-wrap").on("click", function() { + $(".welcome").removeClass("visible"); + $.cookie("_osm_welcome", "hide", { expires: expiry, path: "/" }); }); var bannerExpiry = new Date(); bannerExpiry.setYear(bannerExpiry.getFullYear() + 1); - $('#banner .close-wrap').on('click', function(e) { + $("#banner .close-wrap").on("click", function(e) { var cookieId = e.target.id; - $('#banner').hide(); + $("#banner").hide(); e.preventDefault(); if (cookieId) { - $.cookie(cookieId, 'hide', { expires: bannerExpiry, path: '/' }); + $.cookie(cookieId, "hide", { expires: bannerExpiry, path: "/" }); } }); if (OSM.PIWIK) { - map.on('layeradd', function (e) { + map.on("layeradd", function (e) { if (e.layer.options) { var goal = OSM.PIWIK.goals[e.layer.options.keyid]; if (goal) { - $('body').trigger('piwikgoal', goal); + $("body").trigger("piwikgoal", goal); } } }); @@ -250,7 +250,7 @@ $(document).ready(function () { bottom: bbox.getSouth() - 0.0001 }; - if (location.protocol === 'http' || + if (location.protocol === "http" || bowser.check({chrome: "53", firefox: "55"})) { url = "http://127.0.0.1:8111/load_and_zoom?"; } else { @@ -259,18 +259,18 @@ $(document).ready(function () { if (object) query.select = object.type + object.id; - var iframe = $('') + var iframe = $("") .hide() - .appendTo('body') + .appendTo("body") .attr("src", url + querystring.stringify(query)) - .on('load', function() { + .on("load", function() { $(this).remove(); loaded = true; }); setTimeout(function () { if (!loaded) { - alert(I18n.t('site.index.remote_failed')); + alert(I18n.t("site.index.remote_failed")); iframe.remove(); } }, 1000); @@ -285,16 +285,16 @@ $(document).ready(function () { }); if (OSM.params().edit_help) { - $('#editanchor') - .removeAttr('title') + $("#editanchor") + .removeAttr("title") .tooltip({ - placement: 'bottom', - title: I18n.t('javascripts.edit_help') + placement: "bottom", + title: I18n.t("javascripts.edit_help") }) - .tooltip('show'); + .tooltip("show"); - $('body').one('click', function() { - $('#editanchor').tooltip('hide'); + $("body").one("click", function() { + $("#editanchor").tooltip("hide"); }); } @@ -303,7 +303,7 @@ $(document).ready(function () { page.pushstate = page.popstate = function() { map.setSidebarOverlaid(true); - document.title = I18n.t('layouts.project_name.title'); + document.title = I18n.t("layouts.project_name.title"); }; page.load = function() { @@ -364,9 +364,9 @@ $(document).ready(function () { "/history": history, "/user/:display_name/history": history, "/note/:id": OSM.Note(map), - "/node/:id(/history)": OSM.Browse(map, 'node'), - "/way/:id(/history)": OSM.Browse(map, 'way'), - "/relation/:id(/history)": OSM.Browse(map, 'relation'), + "/node/:id(/history)": OSM.Browse(map, "node"), + "/way/:id(/history)": OSM.Browse(map, "way"), + "/relation/:id(/history)": OSM.Browse(map, "relation"), "/changeset/:id": OSM.Changeset(map), "/query": OSM.Query(map) }); diff --git a/app/assets/javascripts/index/browse.js b/app/assets/javascripts/index/browse.js index 28a830858..c840ecdfa 100644 --- a/app/assets/javascripts/index/browse.js +++ b/app/assets/javascripts/index/browse.js @@ -26,17 +26,17 @@ OSM.initializeBrowse = function (map) { onSelect(e.layer); }); - map.on('layeradd', function (e) { + map.on("layeradd", function (e) { if (e.layer === dataLayer) { map.on("moveend", updateData); updateData(); } }); - map.on('layerremove', function (e) { + map.on("layerremove", function (e) { if (e.layer === dataLayer) { map.off("moveend", updateData); - $('#browse_status').empty(); + $("#browse_status").empty(); } }); @@ -48,7 +48,7 @@ OSM.initializeBrowse = function (map) { } function displayFeatureWarning(count, limit, add, cancel) { - $('#browse_status').html( + $("#browse_status").html( $("") .text(I18n.t("browse.start_rjs.feature_warning", { num_features: count, max_features: limit })) .prepend( @@ -56,7 +56,7 @@ OSM.initializeBrowse = function (map) { .click(cancel)) .append( $("") - .val(I18n.t('browse.start_rjs.load_data')) + .val(I18n.t("browse.start_rjs.load_data")) .click(add))); } @@ -92,13 +92,13 @@ OSM.initializeBrowse = function (map) { var features = dataLayer.buildFeatures(xml); function addFeatures() { - $('#browse_status').empty(); + $("#browse_status").empty(); dataLayer.addData(features); browseBounds = bounds; } function cancelAddFeatures() { - $('#browse_status').empty(); + $("#browse_status").empty(); } if (features.length < maxFeatures) { @@ -120,9 +120,9 @@ OSM.initializeBrowse = function (map) { // Redraw in selected style layer.originalStyle = layer.options; - layer.setStyle({color: '#0000ff', weight: 8}); + layer.setStyle({color: "#0000ff", weight: 8}); - OSM.router.route('/' + layer.feature.type + '/' + layer.feature.id); + OSM.router.route("/" + layer.feature.type + "/" + layer.feature.id); // Stash the currently drawn feature selectedLayer = layer; diff --git a/app/assets/javascripts/index/changeset.js b/app/assets/javascripts/index/changeset.js index 060c5c8be..b670bd289 100644 --- a/app/assets/javascripts/index/changeset.js +++ b/app/assets/javascripts/index/changeset.js @@ -1,6 +1,6 @@ OSM.Changeset = function (map) { var page = {}, - content = $('#sidebar_content'), + content = $("#sidebar_content"), currentChangesetId; page.pushstate = page.popstate = function(path, id) { @@ -17,7 +17,7 @@ OSM.Changeset = function (map) { }; function addChangeset(id, center) { - map.addObject({type: 'changeset', id: parseInt(id, 10)}, function(bounds) { + map.addObject({type: "changeset", id: parseInt(id, 10)}, function(bounds) { if (!window.location.hash && bounds.isValid() && (center || !map.getBounds().contains(bounds))) { OSM.router.withoutMoveListener(function () { @@ -72,7 +72,7 @@ OSM.Changeset = function (map) { } }); - content.find("textarea").val('').trigger("input"); + content.find("textarea").val("").trigger("input"); } page.unload = function() { diff --git a/app/assets/javascripts/index/directions.js b/app/assets/javascripts/index/directions.js index dd408debc..28d436a96 100644 --- a/app/assets/javascripts/index/directions.js +++ b/app/assets/javascripts/index/directions.js @@ -9,13 +9,13 @@ OSM.Directions = function (map) { var popup = L.popup({autoPanPadding: [100, 100]}); var polyline = L.polyline([], { - color: '#03f', + color: "#03f", opacity: 0.3, weight: 10 }); var highlight = L.polyline([], { - color: '#ff0', + color: "#ff0", opacity: 0.5, weight: 12 }); @@ -31,15 +31,15 @@ OSM.Directions = function (map) { var engines = OSM.Directions.engines; engines.sort(function (a, b) { - a = I18n.t('javascripts.directions.engines.' + a.id); - b = I18n.t('javascripts.directions.engines.' + b.id); + a = I18n.t("javascripts.directions.engines." + a.id); + b = I18n.t("javascripts.directions.engines." + b.id); return a.localeCompare(b); }); - var select = $('select.routing_engines'); + var select = $("select.routing_engines"); engines.forEach(function(engine, i) { - select.append("" + I18n.t('javascripts.directions.engines.' + engine.id) + ""); + select.append("" + I18n.t("javascripts.directions.engines." + engine.id) + ""); }); function Endpoint(input, iconUrl) { @@ -58,8 +58,8 @@ OSM.Directions = function (map) { autoPan: true }); - endpoint.marker.on('drag dragend', function (e) { - var dragging = (e.type === 'drag'); + endpoint.marker.on("drag dragend", function (e) { + var dragging = (e.type === "drag"); if (dragging && !chosenEngine.draggable) return; if (dragging && awaitingRoute) return; endpoint.setLatLng(e.target.getLatLng()); @@ -102,12 +102,12 @@ OSM.Directions = function (map) { endpoint.awaitingGeocode = true; - $.getJSON(OSM.NOMINATIM_URL + 'search?q=' + encodeURIComponent(endpoint.value) + '&format=json', function (json) { + $.getJSON(OSM.NOMINATIM_URL + "search?q=" + encodeURIComponent(endpoint.value) + "&format=json", function (json) { endpoint.awaitingGeocode = false; endpoint.hasGeocode = true; if (json.length === 0) { input.addClass("error"); - alert(I18n.t('javascripts.directions.errors.no_place', {place: endpoint.value})); + alert(I18n.t("javascripts.directions.errors.no_place", {place: endpoint.value})); return; } @@ -170,7 +170,7 @@ OSM.Directions = function (map) { var m = Math.round(s / 60); var h = Math.floor(m / 60); m -= h * 60; - return h + ":" + (m < 10 ? '0' : '') + m; + return h + ":" + (m < 10 ? "0" : "") + m; } function findEngine(id) { @@ -212,14 +212,14 @@ OSM.Directions = function (map) { OSM.router.replace("/directions?" + querystring.stringify({ engine: chosenEngine.id, - route: o.lat.toFixed(precision) + ',' + o.lng.toFixed(precision) + ';' + - d.lat.toFixed(precision) + ',' + d.lng.toFixed(precision) + route: o.lat.toFixed(precision) + "," + o.lng.toFixed(precision) + ";" + + d.lat.toFixed(precision) + "," + d.lng.toFixed(precision) })); // copy loading item to sidebar and display it. we copy it, rather than // just using it in-place and replacing it in case it has to be used // again. - $('#sidebar_content').html($('.directions_form .loader_copy').html()); + $("#sidebar_content").html($(".directions_form .loader_copy").html()); map.setSidebarOverlaid(false); awaitingRoute = chosenEngine.getRoute([o, d], function (err, route) { @@ -229,7 +229,7 @@ OSM.Directions = function (map) { map.removeLayer(polyline); if (reportErrors) { - $('#sidebar_content').html('' + I18n.t('javascripts.directions.errors.no_route') + ''); + $("#sidebar_content").html("" + I18n.t("javascripts.directions.errors.no_route") + ""); } return; @@ -243,19 +243,19 @@ OSM.Directions = function (map) { map.fitBounds(polyline.getBounds().pad(0.05)); } - var html = '' + - '' + I18n.t('javascripts.directions.directions') + - '' + - I18n.t('javascripts.directions.distance') + ': ' + formatDistance(route.distance) + '. ' + - I18n.t('javascripts.directions.time') + ': ' + formatTime(route.time) + '.'; - if (typeof route.ascend !== 'undefined' && typeof route.descend !== 'undefined') { - html += '' + - I18n.t('javascripts.directions.ascend') + ': ' + Math.round(route.ascend) + 'm. ' + - I18n.t('javascripts.directions.descend') + ': ' + Math.round(route.descend) +'m.'; + var html = "" + + "" + I18n.t("javascripts.directions.directions") + + "" + + I18n.t("javascripts.directions.distance") + ": " + formatDistance(route.distance) + ". " + + I18n.t("javascripts.directions.time") + ": " + formatTime(route.time) + "."; + if (typeof route.ascend !== "undefined" && typeof route.descend !== "undefined") { + html += "" + + I18n.t("javascripts.directions.ascend") + ": " + Math.round(route.ascend) + "m. " + + I18n.t("javascripts.directions.descend") + ": " + Math.round(route.descend) +"m."; } - html += ''; + html += "
' + I18n.t('javascripts.directions.errors.no_route') + '
" + I18n.t("javascripts.directions.errors.no_route") + "
' + - I18n.t('javascripts.directions.distance') + ': ' + formatDistance(route.distance) + '. ' + - I18n.t('javascripts.directions.time') + ': ' + formatTime(route.time) + '.'; - if (typeof route.ascend !== 'undefined' && typeof route.descend !== 'undefined') { - html += '' + - I18n.t('javascripts.directions.ascend') + ': ' + Math.round(route.ascend) + 'm. ' + - I18n.t('javascripts.directions.descend') + ': ' + Math.round(route.descend) +'m.'; + var html = "
" + + I18n.t("javascripts.directions.distance") + ": " + formatDistance(route.distance) + ". " + + I18n.t("javascripts.directions.time") + ": " + formatTime(route.time) + "."; + if (typeof route.ascend !== "undefined" && typeof route.descend !== "undefined") { + html += "" + + I18n.t("javascripts.directions.ascend") + ": " + Math.round(route.ascend) + "m. " + + I18n.t("javascripts.directions.descend") + ": " + Math.round(route.descend) +"m."; } - html += '
" + instruction + "
' + - I18n.t('javascripts.directions.instructions.courtesy', {link: chosenEngine.creditline}) + - '
" + + I18n.t("javascripts.directions.instructions.courtesy", {link: chosenEngine.creditline}) + + "
') - .text(I18n.t('javascripts.map.layers.overlays')) + $("
") + .text(I18n.t("javascripts.map.layers.overlays")) .attr("class", "deemphasize") .appendTo(overlaySection); - var overlays = $('
') - .attr('class', 'deemphasize') - .text(I18n.t('javascripts.share.paste_html')) + $("
") + .attr("class", "deemphasize") + .text(I18n.t("javascripts.share.paste_html")) .appendTo($linkSection)); // Geo URI - var $geoUriSection = $('
') - .attr('class', 'deemphasize') - .html(I18n.t('javascripts.share.image_size') + ' x ') + $("
") + .attr("class", "deemphasize") + .html(I18n.t("javascripts.share.image_size") + " x ") .appendTo($form); - $('') - .attr('type', 'submit') - .attr('value', I18n.t('javascripts.share.download')) + $("") + .attr("type", "submit") + .attr("value", I18n.t("javascripts.share.download")) .appendTo($form); locationFilter - .on('change', update) + .on("change", update) .addTo(map); - marker.on('dragend', movedMarker); - map.on('move', movedMap); - map.on('moveend layeradd layerremove', update); + marker.on("dragend", movedMarker); + map.on("move", movedMap); + map.on("moveend layeradd layerremove", update); options.sidebar.addPane($ui); $ui - .on('hide', hidden); + .on("hide", hidden); function hidden() { map.removeLayer(marker); @@ -256,19 +256,19 @@ L.OSM.share = function (options) { e.stopPropagation(); e.preventDefault(); - $('#mapnik_scale').val(getScale()); + $("#mapnik_scale").val(getScale()); marker.setLatLng(map.getCenter()); update(); options.sidebar.togglePane($ui, button); - $('.leaflet-control .control-button').tooltip('hide'); + $(".leaflet-control .control-button").tooltip("hide"); } function toggleMarker() { - if ($(this).is(':checked')) { + if ($(this).is(":checked")) { marker.setLatLng(map.getCenter()); map.addLayer(marker); - map.options.scrollWheelZoom = map.options.doubleClickZoom = 'center'; + map.options.scrollWheelZoom = map.options.doubleClickZoom = "center"; } else { map.removeLayer(marker); map.options.scrollWheelZoom = map.options.doubleClickZoom = true; @@ -277,7 +277,7 @@ L.OSM.share = function (options) { } function toggleFilter() { - if ($(this).is(':checked')) { + if ($(this).is(":checked")) { locationFilter.setBounds(map.getBounds().pad(-0.2)); locationFilter.enable(); } else { @@ -293,27 +293,27 @@ L.OSM.share = function (options) { function movedMarker() { if (map.hasLayer(marker)) { - map.off('move', movedMap); - map.on('moveend', updateOnce); + map.off("move", movedMap); + map.on("moveend", updateOnce); map.panTo(marker.getLatLng()); } } function updateOnce() { - map.off('moveend', updateOnce); - map.on('move', movedMap); + map.off("moveend", updateOnce); + map.on("move", movedMap); update(); } function escapeHTML(string) { var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' + "&": "&", + "<": "<", + ">": ">", + "\"": """, + "'": "'" }; - return string === null ? '' : (string + '').replace(/[&<>"']/g, function(match) { + return string === null ? "" : (string + "").replace(/[&<>"']/g, function(match) { return htmlEscapes[match]; }); } @@ -321,18 +321,18 @@ L.OSM.share = function (options) { function update() { var bounds = map.getBounds(); - $('#link_marker') - .prop('checked', map.hasLayer(marker)); + $("#link_marker") + .prop("checked", map.hasLayer(marker)); - $('#image_filter') - .prop('checked', locationFilter.isEnabled()); + $("#image_filter") + .prop("checked", locationFilter.isEnabled()); // Link / Embed - $('#short_input').val(map.getShortUrl(marker)); - $('#long_input').val(map.getUrl(marker)); - $('#short_link').attr('href', map.getShortUrl(marker)); - $('#long_link').attr('href', map.getUrl(marker)); + $("#short_input").val(map.getShortUrl(marker)); + $("#long_input").val(map.getUrl(marker)); + $("#short_link").attr("href", map.getShortUrl(marker)); + $("#long_link").attr("href", map.getUrl(marker)); var params = { bbox: bounds.toBBoxString(), @@ -341,20 +341,20 @@ L.OSM.share = function (options) { if (map.hasLayer(marker)) { var latLng = marker.getLatLng().wrap(); - params.marker = latLng.lat + ',' + latLng.lng; + params.marker = latLng.lat + "," + latLng.lng; } - $('#embed_html').val( - '' + - '' + - escapeHTML(I18n.t('javascripts.share.view_larger_map')) + ''); + $("#embed_html").val( + "" + + "" + + escapeHTML(I18n.t("javascripts.share.view_larger_map")) + ""); // Geo URI - $('#geo_uri') - .attr('href', map.getGeoUri(marker)) + $("#geo_uri") + .attr("href", map.getGeoUri(marker)) .html(map.getGeoUri(marker)); // Image @@ -368,10 +368,10 @@ L.OSM.share = function (options) { L.CRS.EPSG3857.project(bounds.getNorthEast())).getSize(), maxScale = Math.floor(Math.sqrt(size.x * size.y / 0.3136)); - $('#mapnik_minlon').val(bounds.getWest()); - $('#mapnik_minlat').val(bounds.getSouth()); - $('#mapnik_maxlon').val(bounds.getEast()); - $('#mapnik_maxlat').val(bounds.getNorth()); + $("#mapnik_minlon").val(bounds.getWest()); + $("#mapnik_minlat").val(bounds.getSouth()); + $("#mapnik_maxlon").val(bounds.getEast()); + $("#mapnik_maxlat").val(bounds.getNorth()); if (scale < maxScale) { scale = roundScale(maxScale); @@ -381,12 +381,12 @@ L.OSM.share = function (options) { $("#mapnik_image_width").text(Math.round(size.x / scale / 0.00028)); $("#mapnik_image_height").text(Math.round(size.y / scale / 0.00028)); - if (map.getMapBaseLayerId() === 'mapnik') { - $('#export-image').show(); - $('#export-warning').hide(); + if (map.getMapBaseLayerId() === "mapnik") { + $("#export-image").show(); + $("#export-warning").hide(); } else { - $('#export-image').hide(); - $('#export-warning').show(); + $("#export-image").hide(); + $("#export-warning").show(); } } diff --git a/app/assets/javascripts/leaflet.sidebar.js b/app/assets/javascripts/leaflet.sidebar.js index f83add8d5..240e79a50 100644 --- a/app/assets/javascripts/leaflet.sidebar.js +++ b/app/assets/javascripts/leaflet.sidebar.js @@ -19,10 +19,10 @@ L.OSM.sidebar = function(selector) { control.togglePane = function(pane, button) { current .hide() - .trigger('hide'); + .trigger("hide"); currentButton - .removeClass('active'); + .removeClass("active"); if (current === pane) { $(sidebar).hide(); @@ -37,10 +37,10 @@ L.OSM.sidebar = function(selector) { current .show() - .trigger('show'); + .trigger("show"); currentButton - .addClass('active'); + .addClass("active"); }; return control; diff --git a/app/assets/javascripts/leaflet.zoom.js b/app/assets/javascripts/leaflet.zoom.js index 794bfaf4b..e7c048b2d 100644 --- a/app/assets/javascripts/leaflet.zoom.js +++ b/app/assets/javascripts/leaflet.zoom.js @@ -1,26 +1,26 @@ L.OSM.Zoom = L.Control.extend({ options: { - position: 'topright' + position: "topright" }, onAdd: function (map) { - var zoomName = 'zoom', - container = L.DomUtil.create('div', zoomName); + var zoomName = "zoom", + container = L.DomUtil.create("div", zoomName); this._map = map; this._zoomInButton = this._createButton( - '', I18n.t('javascripts.map.zoom.in'), zoomName + 'in', container, this._zoomIn, this); + "", I18n.t("javascripts.map.zoom.in"), zoomName + "in", container, this._zoomIn, this); this._zoomOutButton = this._createButton( - '', I18n.t('javascripts.map.zoom.out'), zoomName + 'out', container, this._zoomOut, this); + "", I18n.t("javascripts.map.zoom.out"), zoomName + "out", container, this._zoomOut, this); - map.on('zoomend zoomlevelschange', this._updateDisabled, this); + map.on("zoomend zoomlevelschange", this._updateDisabled, this); return container; }, onRemove: function (map) { - map.off('zoomend zoomlevelschange', this._updateDisabled, this); + map.off("zoomend zoomlevelschange", this._updateDisabled, this); }, _zoomIn: function (e) { @@ -32,28 +32,28 @@ L.OSM.Zoom = L.Control.extend({ }, _createButton: function (html, title, className, container, fn, context) { - var link = L.DomUtil.create('a', 'control-button ' + className, container); + var link = L.DomUtil.create("a", "control-button " + className, container); link.innerHTML = html; - link.href = '#'; + link.href = "#"; link.title = title; - L.DomUtil.create('span', 'icon ' + className, link); + L.DomUtil.create("span", "icon " + className, link); var stop = L.DomEvent.stopPropagation; L.DomEvent - .on(link, 'click', stop) - .on(link, 'mousedown', stop) - .on(link, 'dblclick', stop) - .on(link, 'click', L.DomEvent.preventDefault) - .on(link, 'click', fn, context); + .on(link, "click", stop) + .on(link, "mousedown", stop) + .on(link, "dblclick", stop) + .on(link, "click", L.DomEvent.preventDefault) + .on(link, "click", fn, context); return link; }, _updateDisabled: function () { var map = this._map, - className = 'disabled'; + className = "disabled"; L.DomUtil.removeClass(this._zoomInButton, className); L.DomUtil.removeClass(this._zoomOutButton, className); diff --git a/app/assets/javascripts/oauth.js b/app/assets/javascripts/oauth.js index 037e1d730..cb448d826 100644 --- a/app/assets/javascripts/oauth.js +++ b/app/assets/javascripts/oauth.js @@ -4,7 +4,7 @@ $(document).ready(function () { var application_data = $("head").data(); function makeAbsolute(url) { - var a = document.createElement('a'); + var a = document.createElement("a"); a.href = url; return a.href; } diff --git a/app/assets/javascripts/router.js b/app/assets/javascripts/router.js index 0f37e32f1..c42e703c5 100644 --- a/app/assets/javascripts/router.js +++ b/app/assets/javascripts/router.js @@ -53,13 +53,13 @@ OSM.Router = function(map, rts) { var splatParam = /\*\w+/g; function Route(path, controller) { - var regexp = new RegExp('^' + - path.replace(escapeRegExp, '\\$&') - .replace(optionalParam, '(?:$1)?') + var regexp = new RegExp("^" + + path.replace(escapeRegExp, "\\$&") + .replace(optionalParam, "(?:$1)?") .replace(namedParam, function(match, optional){ - return optional ? match : '([^\/]+)'; + return optional ? match : "([^\/]+)"; }) - .replace(splatParam, '(.*?)') + '(?:\\?.*)?$'); + .replace(splatParam, "(.*?)") + "(?:\\?.*)?$"); var route = {}; @@ -94,36 +94,36 @@ OSM.Router = function(map, rts) { } }; - var currentPath = window.location.pathname.replace(/(.)\/$/, '$1') + window.location.search, + var currentPath = window.location.pathname.replace(/(.)\/$/, "$1") + window.location.search, currentRoute = routes.recognize(currentPath), currentHash = location.hash || OSM.formatHash(map); var router = {}; if (window.history && window.history.pushState) { - $(window).on('popstate', function(e) { + $(window).on("popstate", function(e) { if (!e.originalEvent.state) return; // Is it a real popstate event or just a hash change? var path = window.location.pathname + window.location.search, route = routes.recognize(path); if (path === currentPath) return; - currentRoute.run('unload', null, route === currentRoute); + currentRoute.run("unload", null, route === currentRoute); currentPath = path; currentRoute = route; - currentRoute.run('popstate', currentPath); + currentRoute.run("popstate", currentPath); map.setState(e.originalEvent.state, {animate: false}); }); router.route = function (url) { - var path = url.replace(/#.*/, ''), + var path = url.replace(/#.*/, ""), route = routes.recognize(path); if (!route) return false; - currentRoute.run('unload', null, route === currentRoute); + currentRoute.run("unload", null, route === currentRoute); var state = OSM.parseHash(url); map.setState(state); window.history.pushState(state, document.title, url); currentPath = path; currentRoute = route; - currentRoute.run('pushstate', currentPath); + currentRoute.run("pushstate", currentPath); return true; }; @@ -166,19 +166,19 @@ OSM.Router = function(map, rts) { router.withoutMoveListener = function (callback) { function disableMoveListener() { - map.off('moveend', router.updateHash); - map.once('moveend', function () { - map.on('moveend', router.updateHash); + map.off("moveend", router.updateHash); + map.once("moveend", function () { + map.on("moveend", router.updateHash); }); } - map.once('movestart', disableMoveListener); + map.once("movestart", disableMoveListener); callback(); - map.off('movestart', disableMoveListener); + map.off("movestart", disableMoveListener); }; router.load = function() { - var loadState = currentRoute.run('load', currentPath); + var loadState = currentRoute.run("load", currentPath); router.stateChange(loadState || {}); }; @@ -187,8 +187,8 @@ OSM.Router = function(map, rts) { currentRoute = routes.recognize(currentPath); }; - map.on('moveend baselayerchange overlaylayerchange', router.updateHash); - $(window).on('hashchange', router.hashUpdated); + map.on("moveend baselayerchange overlaylayerchange", router.updateHash); + $(window).on("hashchange", router.hashUpdated); return router; }; diff --git a/app/assets/javascripts/user.js b/app/assets/javascripts/user.js index bdf044305..73bb2406e 100644 --- a/app/assets/javascripts/user.js +++ b/app/assets/javascripts/user.js @@ -7,30 +7,30 @@ $(document).ready(function () { zoomControl: false }).addLayer(new L.OSM.Mapnik()); - var position = $('html').attr('dir') === 'rtl' ? 'topleft' : 'topright'; + var position = $("html").attr("dir") === "rtl" ? "topleft" : "topright"; L.OSM.zoom({position: position}) .addTo(map); var locate = L.control.locate({ position: position, - icon: 'icon geolocate', - iconLoading: 'icon geolocate', + icon: "icon geolocate", + iconLoading: "icon geolocate", strings: { - title: I18n.t('javascripts.map.locate.title'), - popup: I18n.t('javascripts.map.locate.popup') + title: I18n.t("javascripts.map.locate.title"), + popup: I18n.t("javascripts.map.locate.popup") } }).addTo(map); var locateContainer = locate.getContainer(); $(locateContainer) - .removeClass('leaflet-control-locate leaflet-bar') - .addClass('control-locate') + .removeClass("leaflet-control-locate leaflet-bar") + .addClass("control-locate") .children("a") - .attr('href', '#') - .removeClass('leaflet-bar-part leaflet-bar-part-single') - .addClass('control-button'); + .attr("href", "#") + .removeClass("leaflet-bar-part leaflet-bar-part-single") + .addClass("control-button"); if (OSM.home) { map.setView([OSM.home.lat, OSM.home.lon], 12); @@ -47,14 +47,14 @@ $(document).ready(function () { } map.on("click", function (e) { - if ($('#updatehome').is(':checked')) { + if ($("#updatehome").is(":checked")) { var zoom = map.getZoom(), precision = OSM.zoomPrecision(zoom), location = e.latlng.wrap(); - $('#homerow').removeClass(); - $('#home_lat').val(location.lat.toFixed(precision)); - $('#home_lon').val(location.lng.toFixed(precision)); + $("#homerow").removeClass(); + $("#home_lat").val(location.lat.toFixed(precision)); + $("#home_lon").val(location.lng.toFixed(precision)); marker.setLatLng(e.latlng); marker.addTo(map); @@ -62,7 +62,7 @@ $(document).ready(function () { }); } else { $("[data-user]").each(function () { - var user = $(this).data('user'); + var user = $(this).data("user"); if (user.lon && user.lat) { L.marker([user.lat, user.lon], {icon: OSM.getUserIcon(user.icon)}).addTo(map) .bindPopup(user.description); diff --git a/app/assets/javascripts/welcome.js b/app/assets/javascripts/welcome.js index 5ba0d7cd2..c83d153da 100644 --- a/app/assets/javascripts/welcome.js +++ b/app/assets/javascripts/welcome.js @@ -6,28 +6,28 @@ $(document).ready(function() { params.lon = parseFloat(params.lon); params.zoom = params.zoom || 17; - var url = '/edit'; + var url = "/edit"; if (params.editor) { - url += '?editor=' + params.editor; + url += "?editor=" + params.editor; } url += OSM.formatHash(params); - $('.start-mapping').attr('href', url); + $(".start-mapping").attr("href", url); } else { var geoSuccess = function (position) { - window.location = '/edit' + OSM.formatHash({ + window.location = "/edit" + OSM.formatHash({ zoom: 17, lat: position.coords.latitude, lon: position.coords.longitude }); }; - $('.start-mapping').on('click', function(e) { + $(".start-mapping").on("click", function(e) { e.preventDefault(); - $('.start-mapping').addClass('loading'); + $(".start-mapping").addClass("loading"); if (navigator.geolocation) { // handle firefox's weird implementation @@ -42,6 +42,6 @@ $(document).ready(function() { } function manualEdit() { - window.location = '/?edit_help=1'; + window.location = "/?edit_help=1"; } }); diff --git a/config/eslint.json b/config/eslint.json index b37ec6410..5b058e354 100644 --- a/config/eslint.json +++ b/config/eslint.json @@ -51,6 +51,7 @@ "no-void": "error", "no-warning-comments": "warn", "no-with": "error", + "quotes": ["error", "double"], "radix": ["error", "always"], "semi": ["error", "always"], "semi-spacing": "error", -- 2.39.5