Browse Source
Merge pull request #82 from plepe/openstreetmap-date-format
Openstreetmap date format
master
Stephan Bösch-Plepelits
5 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with
155 additions and
2 deletions
doc/TwigJS.md
index.php
locales/ast.js
locales/ca.js
locales/cs.js
locales/da.js
locales/de.js
locales/el.js
locales/en.js
locales/es.js
locales/et.js
locales/fr.js
locales/hu.js
locales/it.js
locales/ja.js
locales/nl.js
locales/pl.js
locales/pt-br.js
locales/pt.js
locales/ro.js
locales/ru.js
locales/sr.js
locales/uk.js
package.json
src/index.js
src/twigFunctions.js
@ -67,6 +67,7 @@ Extra filters:
* filter websiteUrl: return a valid http link. Example: `{{ "www.google.com"|websiteUrl }}` -> "http://www.google.com"; `{{ "https://google.com"|websiteUrl }}` -> "https://google.com"
* filter `matches` : regular expression match. e.g. `{{ "test"|matches("e(st)$") }}` returns `[ "est", "st" ]` . Returns null if it does not match.
* filter `osmDateParse` : returns an array with the lower and upper boundary of the year of a `start_date` tag. See [https://github.com/plepe/openstreetmap-date-parser ](openstreetmap-date-parser ) for details.
* filter `osmDateFormat` : returns the date as localized strings. Accept an object for options, e.g. `{{ tags.start_date|osmDateFormat({ format: 'short' }) }}` . See [https://github.com/plepe/openstreetmap-date-format ](openstreetmap-date-format ) for details.
* filter `natsort` : Sort an array naturally, see [https://www.npmjs.com/package/natsort ](natsort ) for details.
* filter `unique` : Remove duplicate elements from an array.
* filter `md5` : calculate md5 hash of a string.
@ -55,6 +55,7 @@ html_export_var(array(
< ? php print modulekit_include_css (); /* prints all css-includes */ ?>
< ? php print_add_html_headers (); /* print additional html headers */ ?>
< script src = " dist/openstreetbrowser.js?<?= $modulekit['version'] ?> " ></ script >
< script src = " dist/locale-<?= $ui_lang ?>.js?<?= $modulekit['version'] ?> " ></ script >
< ? php @ include " local-head.php " ?>
</ head >
< body >
@ -0,0 +1,7 @@
global . locale = {
id : 'ast' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
//require('moment/locale/ast')
@ -0,0 +1,7 @@
global . locale = {
id : 'ca' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/de' )
}
require ( 'moment/locale/ca' )
@ -0,0 +1,7 @@
global . locale = {
id : 'cs' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/cs' )
@ -0,0 +1,7 @@
global . locale = {
id : 'da' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/da' )
@ -0,0 +1,7 @@
global . locale = {
id : 'de' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/de' )
}
require ( 'moment/locale/de' )
@ -0,0 +1,7 @@
global . locale = {
id : 'el' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/el' )
@ -0,0 +1,5 @@
global . locale = {
id : 'en' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
@ -0,0 +1,7 @@
global . locale = {
id : 'es' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/es' )
@ -0,0 +1,7 @@
global . locale = {
id : 'et' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/et' )
@ -0,0 +1,7 @@
global . locale = {
id : 'fr' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/fr' )
@ -0,0 +1,7 @@
global . locale = {
id : 'hu' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/hu' )
@ -0,0 +1,7 @@
global . locale = {
id : 'it' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/it' )
@ -0,0 +1,7 @@
global . locale = {
id : 'ja' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/ja' )
@ -0,0 +1,7 @@
global . locale = {
id : 'nl' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/nl' )
@ -0,0 +1,7 @@
global . locale = {
id : 'pl' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/pl' )
@ -0,0 +1,7 @@
global . locale = {
id : 'pt-br' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/pt-br' )
@ -0,0 +1,7 @@
global . locale = {
id : 'pt' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/pt' )
@ -0,0 +1,7 @@
global . locale = {
id : 'ro' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/ro' )
@ -0,0 +1,7 @@
global . locale = {
id : 'ru' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/ru' )
@ -0,0 +1,7 @@
global . locale = {
id : 'sr' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/sr' )
@ -0,0 +1,7 @@
global . locale = {
id : 'uk' ,
moment : require ( 'moment' ) ,
osmDateFormatTemplates : require ( 'openstreetmap-date-format/templates/en' )
}
require ( 'moment/locale/uk' )
@ -33,6 +33,7 @@
"natsort" : "^1.0.6" ,
"opening_hours" : "^3.5.0" ,
"openstreetbrowser-categories-main" : "https://github.com/plepe/openstreetbrowser-categories-main" ,
"openstreetmap-date-format" : "^0.1.0" ,
"openstreetmap-date-parser" : "^0.1.0" ,
"openstreetmap-tag-translations" : "https://github.com/plepe/openstreetmap-tag-translations" ,
"overpass-layer" : "^2.3.0" ,
@ -68,7 +69,8 @@
"scripts" : {
"test" : "echo \"Error: no test specified\" && exit 1" ,
"build" : "browserify -g browserify-css src/index.js -o dist/tmp1.js && babel --presets env dist/tmp1.js > dist/tmp2.js && mv dist/tmp2.js dist/openstreetbrowser.js && rm dist/tmp1.js" ,
"watch" : "watchify --debug -g browserify-css src/index.js -o dist/openstreetbrowser.js -v" ,
"build-locales" : "for i in `ls locales/` ; do browserify locales/$i -o dist/locale-$i ; done" ,
"watch" : "npm run build-locales && watchify --debug -g browserify-css src/index.js -o dist/openstreetbrowser.js -v" ,
"prepublish" : "npm run build" ,
"lint" : "standard src/*.js"
} ,
@ -277,7 +277,7 @@ window.showDetails = function (data, category) {
div = document . createElement ( 'div' )
div . className = 'description'
div . innerHTML = data . data . description || ''
div . innerHTML = data . data . popupDescription || data . data . description || ''
dom . appendChild ( div )
data . sublayer . updateAssets ( div , data )
@ -2,6 +2,7 @@ var OverpassLayer = require('overpass-layer')
var OpeningHours = require ( 'opening_hours' )
var colorInterpolate = require ( 'color-interpolate' )
var osmParseDate = require ( 'openstreetmap-date-parser' )
var osmFormatDate = require ( 'openstreetmap-date-format' )
const natsort = require ( 'natsort' )
const md5 = require ( 'md5' )
@ -66,6 +67,9 @@ OverpassLayer.twig.extendFunction('colorInterpolate', function (map, value) {
OverpassLayer . twig . extendFilter ( 'osmParseDate' , function ( value ) {
return osmParseDate ( value )
} )
OverpassLayer . twig . extendFilter ( 'osmFormatDate' , function ( value , param ) {
return osmFormatDate ( value , param . length ? param [ 0 ] : { } )
} )
OverpassLayer . twig . extendFilter ( 'md5' , function ( value ) {
if ( ! ( value in md5cache ) ) {
md5cache [ value ] = md5 ( value )