Compare commits

...

2 commits

Author SHA1 Message Date
e233c8dda6
Add query param to close sidebar
The sidebar is open by default on large devices, but now we can link to
a fullscreen map for a more immersive experience.

Requested-By: Eric Villnow <eric@vill.now>
2025-10-12 22:38:41 -05:00
ca8aa335e5
Disable existing layers if selecting via URL
This probably breaks existing links that assume a basemap, but…meh!

Otherwise there's no way to disable my location layer nor the basemap,
both of which are on by default.

Requested-By: Eric Villnow <eric@vill.now>
2025-10-12 22:38:35 -05:00

View file

@ -132,6 +132,10 @@ for (let category of layerCategories) {
const urlParams = qs.parse(window.location.search, { ignoreQueryPrefix: true }); const urlParams = qs.parse(window.location.search, { ignoreQueryPrefix: true });
const urlLayers = ('layer' in urlParams) ? (typeof urlParams.layer === 'string' ? [urlParams.layer] : urlParams.layer) : []; const urlLayers = ('layer' in urlParams) ? (typeof urlParams.layer === 'string' ? [urlParams.layer] : urlParams.layer) : [];
if (urlLayers.length > 0) {
// Disable default-enabled layers if we're selecting layers via query params
layerCategories.forEach(c => c.layers.forEach(l => l.enabled = false));
}
for (let category of layerCategories) { for (let category of layerCategories) {
for (let layer of category.layers) { for (let layer of category.layers) {
if (urlLayers.includes(layer.name)) { if (urlLayers.includes(layer.name)) {
@ -149,6 +153,10 @@ for (let category of layerCategories) {
} }
} }
} }
const sidebarVisible = ('sidebar' in urlParams) ? (urlParams.sidebar !== 'false') : true;
if (!sidebarVisible) {
document.body.classList.remove("nav-open");
}
const customLayerDiv = document.createElement("div"); const customLayerDiv = document.createElement("div");
customLayerDiv.innerHTML = ` customLayerDiv.innerHTML = `