// ==UserScript== // @name Open WME in EST // @description Opens the current Waze Map Editor view in Estonian Land Board Geoportal // @version 0.8 // @include /^https:\/\/(www|beta)\.waze\.com\/*\/(?!user\/)(.{2,6}\/)?editor.*$/ // @include https://xgis.maaamet.ee/maps/* // @include https://xgis.maaamet.ee/xgis2/page/app/* // @require https://greasyfork.org/scripts/383120-proj4-wazedev/code/proj4-Wazedev.js // @author script is based from orignal google maps script, modified by rain101 // @namespace https://greasyfork.org/users/207621 // @downloadURL none // ==/UserScript== /* global $ */ /* global OpenLayers */ /* global I18n */ /* global W */ /* global proj4 */ /* eslint curly: ["warn", "multi-or-nest"]*/ console.log("WME_EE BEGINNING"); const icon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAArUlEQVQokbXMPQ6CMBxA8X80EMpgcdBRowaMB2NquKKLxEQ08WOCiR4BptLpeYjqS37rk5OpyU1Dbm7BjuaK5ObGzrzYmWegF7lpkKK6s68+7Kt3oA9F9UAO5ZlNWbMtL4FqDuUZUYs1syRjrpZBZklGslghcRwjIj8RRdEfhlprlFKkaRpEKYXWGmnbFmstfd8HsdbSdR3inONXOef+MByGAe890zQF8d4zjiNfdeREmfFbjlgAAAAASUVORK5CYII='; function gen_url() { var geoPoint=new OpenLayers.Geometry.Point(W.map.getCenter().lon,W.map.getCenter().lat); proj4.defs("EPSG:3301", "+proj=lcc +lat_1=59.33333333333334 +lat_2=58 +lat_0=57.51755393055556 +lon_0=24 +x_0=500000 +y_0=6375000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"); var source = new proj4.Proj("EPSG:900913"); var dest = new proj4.Proj("EPSG:3301"); geoPoint = proj4.transform(source, dest, geoPoint); // waze zoom leveles 0-10 const zoom = W.map.getZoom(); var array = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0]; // If Waze zoom is 0, then we'll take first array element and the result is: // Pow(2, 10]) * 175 = 179200 // the result is opened map at level 1:179200 (landportal has 178985) var result = Math.pow(2, array[zoom]) * 175; // Normal Flash Estonian Landboard page // return 'http://xgis.maaamet.ee/xGIS/XGis?app_id=UU82&user_id=at&punkt=' + point.x + ',' + point.y + '&moot=4000'; // HTML5 Estonian Landboard page //return 'http://xgis.maaamet.ee/maps/XGis?app_id=UU82A&user_id=at&zlevel=' + zoom + ',' + point.x + ',' + point.y; //https://xgis.maaamet.ee/xgis2/page/app/maainfo?punkt=542228.98,6588663.63&moot=2000 return 'https://xgis.maaamet.ee/xgis2/page/app/maainfo?punkt=' + geoPoint.x + ',' + geoPoint.y + '&moot=' + result; } function init() { try { var element = $('.WazeControlPermalink'); if ($(element).length) { var section = $("