Add any params to connect message

This commit is contained in:
Dave Conway-Jones 2021-03-31 21:33:07 +01:00
parent 00417276ff
commit 46d76ab7dd
No known key found for this signature in database
GPG Key ID: 88BA2B8A411BE9FF
2 changed files with 14 additions and 16 deletions

File diff suppressed because one or more lines are too long

View File

@ -82,7 +82,7 @@ var connect = function() {
if (!inIframe) { if (!inIframe) {
document.getElementById("footer").innerHTML = "<font color='#494'>"+ibmfoot+"</font>"; document.getElementById("footer").innerHTML = "<font color='#494'>"+ibmfoot+"</font>";
} }
ws.send(JSON.stringify({action:"connected"})); ws.send(JSON.stringify({action:"connected",parameters:Object.fromEntries((new URL(location)).searchParams)}));
onoffline(); onoffline();
}; };
ws.onclose = function() { ws.onclose = function() {
@ -2231,7 +2231,7 @@ function doCommand(cmd) {
// Add a new KML overlay layer // Add a new KML overlay layer
if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("kml") ) { if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("kml") ) {
if (overlays.hasOwnProperty(cmd.map.overlay)) { if (overlays.hasOwnProperty(cmd.map.overlay)) {
map.removeLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].removeFrom(map);
existsalready = true; existsalready = true;
} }
//var opt = {async:true}; //var opt = {async:true};
@ -2240,14 +2240,14 @@ function doCommand(cmd) {
layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay); layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
} }
if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) { if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) {
map.addLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].addTo(map);
} }
if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); } if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); }
} }
// Add a new TOPOJSON overlay layer // Add a new TOPOJSON overlay layer
if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("topojson") ) { if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("topojson") ) {
if (overlays.hasOwnProperty(cmd.map.overlay)) { if (overlays.hasOwnProperty(cmd.map.overlay)) {
map.removeLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].removeFrom(map);
existsalready = true; existsalready = true;
} }
overlays[cmd.map.overlay] = omnivore.topojson.parse(cmd.map.topojson); overlays[cmd.map.overlay] = omnivore.topojson.parse(cmd.map.topojson);
@ -2255,38 +2255,35 @@ function doCommand(cmd) {
layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay); layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
} }
if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) { if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) {
map.addLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].addTo(map);
} }
if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); } if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); }
} }
// Add a new GPX overlay layer // Add a new GPX overlay layer
if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("gpx") ) { if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("gpx") ) {
if (overlays.hasOwnProperty(cmd.map.overlay)) { if (overlays.hasOwnProperty(cmd.map.overlay)) {
map.removeLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].removeFrom(map);
existsalready = true; existsalready = true;
} }
overlays[cmd.map.overlay] = omnivore.gpx.parse(cmd.map.gpx, null, custIco()); overlays[cmd.map.overlay] = omnivore.gpx.parse(cmd.map.gpx, null, custIco());
if (!existsalready) { if (!existsalready) {
layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay); layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
} }
if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) { if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) {
map.addLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].addTo(map);
} }
if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); } if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); }
} }
// Add a new velocity overlay layer // Add a new velocity overlay layer
if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("velocity") ) { if (cmd.map && cmd.map.hasOwnProperty("overlay") && cmd.map.hasOwnProperty("velocity") ) {
if (overlays.hasOwnProperty(cmd.map.overlay)) { if (overlays.hasOwnProperty(cmd.map.overlay)) {
map.removeLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].removeFrom(map);
existsalready = true; layercontrol.removeOverlay(overlays[cmd.map.overlay]);
} }
overlays[cmd.map.overlay] = L.velocityLayer(cmd.map.velocity); overlays[cmd.map.overlay] = L.velocityLayer(cmd.map.velocity);
if (!existsalready) { layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
}
if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) { if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) {
map.addLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].addTo(map);
} }
if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); } if (cmd.map.hasOwnProperty("fit")) { map.fitBounds(overlays[cmd.map.overlay].getBounds()); }
} }
@ -2315,9 +2312,10 @@ function doCommand(cmd) {
layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay); layercontrol.addOverlay(overlays[cmd.map.overlay],cmd.map.overlay);
} }
if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) { if (!cmd.map.hasOwnProperty("visible") || (cmd.map.visible != false)) {
map.addLayer(overlays[cmd.map.overlay]); overlays[cmd.map.overlay].addTo(map);
} }
} }
// Swap a base layer // Swap a base layer
if (cmd.layer && basemaps.hasOwnProperty(cmd.layer)) { if (cmd.layer && basemaps.hasOwnProperty(cmd.layer)) {
map.removeLayer(basemaps[baselayername]); map.removeLayer(basemaps[baselayername]);