You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

39 lines
860 B

var queryString = require('query-string')
var OpenStreetBrowserLoader = require('./OpenStreetBrowserLoader')
register_hook('state-apply', function (state) {
if (!('categories' in state)) {
return
}
var list = state.categories.split(',')
list.forEach(function (id) {
let param
let m = id.match(/^([0-9A-Z_-]+)(\[(.*)\])/i)
if (m) {
id = m[1]
param = queryString.parse(m[3])
}
OpenStreetBrowserLoader.getCategory(id, function (err, category) {
if (err) {
console.log("Can't load category " + id + ': ', err)
return
}
if (category) {
if (param) {
category.setParam(param)
}
if (!category.parentDom) {
category.setParentDom(document.getElementById('contentListAddCategories'))
}
category.open()
}
})
})
})