// ==UserScript== // @name WMEExtResources // @namespace https://greasyfork.org/users/30701-justins83-waze // @version 0.1 // @description Links for opening external resources at the WME location // @author JustinS83 // @include https://www.waze.com/editor* // @include https://www.waze.com/*/editor* // @include https://beta.waze.com* // @exclude https://www.waze.com/user/editor* // @grant none // @downloadURL none // ==/UserScript== (function() { 'use strict'; function init(){ var $section = $("
", {style:"padding:8px 16px"}); $section.html([ '', 'Google Maps', '' ].join(' ')); $('.WazeControlPermalink').append($section.html()); $('#GMapsImg').click(function(){ let projI = new OpenLayers.Projection("EPSG:900913"); let projE = new OpenLayers.Projection("EPSG:4326"); let center_lonlat = (new OpenLayers.LonLat(Waze.map.center.lon, Waze.map.center.lat)).transform(projI,projE); let lat = Math.round(center_lonlat.lat * 1000000) / 1000000; let lon = Math.round(center_lonlat.lon * 1000000) / 1000000; //let lang = magic.getConfig(plugId, 'language').default; window.open('https://www.google.com/maps/@' + lat + ',' + lon + ',' + ( W.map.zoom + 12) + 'z' /*+ (lang !== "" ? "?hl=" + lang : "")*/, 'Google Maps'); }); var $sectionMapillary = $("
", {style:"padding:8px 16px"}); $sectionMapillary.html([ '', 'Mapillary', '' ].join(' ')); $('.WazeControlPermalink').append($sectionMapillary.html()); $('#MapillaryImg').click(function(){ var projI=new OpenLayers.Projection("EPSG:900913"); var projE=new OpenLayers.Projection("EPSG:4326"); var center_lonlat = (new OpenLayers.LonLat(Waze.map.center.lon, Waze.map.center.lat)).transform(projI,projE); var lat = Math.round(center_lonlat.lat * 1000000) / 1000000; var lon = Math.round(center_lonlat.lon * 1000000) / 1000000; window.open('https://www.mapillary.com/app/?lat=' + lat + '&lng=' + lon + '&z=' +( W.map.zoom + 12), 'Mapillary'); }); } function bootstrap(tries) { tries = tries || 1; if (window.W && window.W.map && window.W.model && $) { init(); } else if (tries < 1000) { setTimeout(function () {bootstrap(tries++);}, 200); } } bootstrap(); })();