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.
31 lines
668 B
31 lines
668 B
var OverpassLayer = require('overpass-layer')
|
|
var OpeningHours = require('opening_hours')
|
|
|
|
OverpassLayer.twig.extendFunction('tagsPrefix', function (tags, prefix) {
|
|
var ret = {}
|
|
var count = 0
|
|
|
|
for (var k in tags) {
|
|
if (k.substr(0, prefix.length) === prefix) {
|
|
ret[k.substr(prefix.length)] = k
|
|
count++
|
|
}
|
|
}
|
|
|
|
if (count === 0) {
|
|
return null
|
|
}
|
|
|
|
return ret
|
|
})
|
|
|
|
OverpassLayer.twig.extendFunction('openingHoursState', function (openingHours) {
|
|
try {
|
|
var oh = new OpeningHours(openingHours)
|
|
} catch (err) {
|
|
console.log('Error in opening_hours: ' + err)
|
|
return 'unknown'
|
|
}
|
|
|
|
return oh.getStateString(new Date(), true)
|
|
})
|