Skip to content

Commit bb662e3

Browse files
committed
feat: handle multiple dataUrl parameters on map load
1 parent adc1cf4 commit bb662e3

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

umap/static/umap/js/umap.js

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -184,14 +184,17 @@ U.Map = L.Map.extend({
184184
this._default_extent = true
185185
this.options.name = L._('Untitled map')
186186
let data = L.Util.queryString('data', null)
187-
let dataUrl = L.Util.queryString('dataUrl', null)
187+
const url = new URL(window.location.href)
188+
const dataUrls = new URLSearchParams(url.search).getAll('dataUrl')
188189
const dataFormat = L.Util.queryString('dataFormat', 'geojson')
189-
if (dataUrl) {
190-
dataUrl = decodeURIComponent(dataUrl)
191-
dataUrl = this.localizeUrl(dataUrl)
192-
dataUrl = this.proxyUrl(dataUrl)
193-
const datalayer = this.createDataLayer()
194-
datalayer.importFromUrl(dataUrl, dataFormat)
190+
if (dataUrls.length) {
191+
for (let dataUrl of dataUrls) {
192+
dataUrl = decodeURIComponent(dataUrl)
193+
dataUrl = this.localizeUrl(dataUrl)
194+
dataUrl = this.proxyUrl(dataUrl)
195+
const datalayer = this.createDataLayer()
196+
datalayer.importFromUrl(dataUrl, dataFormat)
197+
}
195198
} else if (data) {
196199
data = decodeURIComponent(data)
197200
const datalayer = this.createDataLayer()

0 commit comments

Comments
 (0)