custom-openstreetmap-tile-s.../js/background.js

40 lines
872 B
JavaScript
Raw Permalink Normal View History

2020-07-03 21:12:25 +02:00
const urls = [
"*://*.tile.openstreetmap.org/*"
]
2020-07-03 21:29:19 +02:00
var tileserver_url = "";
2020-07-03 21:22:22 +02:00
function log(msg) {
console.log("custom-openstreetmap-tile-server: " + msg)
}
2020-07-03 21:29:19 +02:00
function setTileserver(storage) {
tileserver_url = storage.tileserver;
log("set tileserver_url to " + tileserver_url);
}
function onError(error) {
log(`Error: ${error}`);
}
function updateTileserverUrl() {
var getting = browser.storage.local.get("tileserver");
getting.then(setTileserver, onError);
}
2020-07-03 20:54:27 +02:00
function replaceTileserver(request) {
2020-07-03 21:29:19 +02:00
updateTileserverUrl();
if (tileserver_url == "") {
2020-07-03 21:37:27 +02:00
log(request.url + " -> no tileserver_url");
2020-07-03 21:29:19 +02:00
return {}
}
var url = request.url.replace("tile.openstreetmap.org", tileserver_url);
2020-07-03 21:22:22 +02:00
log(request.url + " -> " + url);
2020-07-03 20:54:27 +02:00
return {redirectUrl: url};
}
chrome.webRequest.onBeforeRequest.addListener(replaceTileserver, {urls: urls}, ["blocking"]);