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
parent
commit
cd01ebdc5c
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      doc/TwigJS.md
  2. 1
      index.php
  3. 7
      locales/ast.js
  4. 7
      locales/ca.js
  5. 7
      locales/cs.js
  6. 7
      locales/da.js
  7. 7
      locales/de.js
  8. 7
      locales/el.js
  9. 5
      locales/en.js
  10. 7
      locales/es.js
  11. 7
      locales/et.js
  12. 7
      locales/fr.js
  13. 7
      locales/hu.js
  14. 7
      locales/it.js
  15. 7
      locales/ja.js
  16. 7
      locales/nl.js
  17. 7
      locales/pl.js
  18. 7
      locales/pt-br.js
  19. 7
      locales/pt.js
  20. 7
      locales/ro.js
  21. 7
      locales/ru.js
  22. 7
      locales/sr.js
  23. 7
      locales/uk.js
  24. 4
      package.json
  25. 2
      src/index.js
  26. 4
      src/twigFunctions.js

1
doc/TwigJS.md

@ -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.

1
index.php

@ -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>

7
locales/ast.js

@ -0,0 +1,7 @@
global.locale = {
id: 'ast',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
//require('moment/locale/ast')

7
locales/ca.js

@ -0,0 +1,7 @@
global.locale = {
id: 'ca',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/de')
}
require('moment/locale/ca')

7
locales/cs.js

@ -0,0 +1,7 @@
global.locale = {
id: 'cs',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/cs')

7
locales/da.js

@ -0,0 +1,7 @@
global.locale = {
id: 'da',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/da')

7
locales/de.js

@ -0,0 +1,7 @@
global.locale = {
id: 'de',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/de')
}
require('moment/locale/de')

7
locales/el.js

@ -0,0 +1,7 @@
global.locale = {
id: 'el',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/el')

5
locales/en.js

@ -0,0 +1,5 @@
global.locale = {
id: 'en',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}

7
locales/es.js

@ -0,0 +1,7 @@
global.locale = {
id: 'es',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/es')

7
locales/et.js

@ -0,0 +1,7 @@
global.locale = {
id: 'et',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/et')

7
locales/fr.js

@ -0,0 +1,7 @@
global.locale = {
id: 'fr',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/fr')

7
locales/hu.js

@ -0,0 +1,7 @@
global.locale = {
id: 'hu',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/hu')

7
locales/it.js

@ -0,0 +1,7 @@
global.locale = {
id: 'it',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/it')

7
locales/ja.js

@ -0,0 +1,7 @@
global.locale = {
id: 'ja',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/ja')

7
locales/nl.js

@ -0,0 +1,7 @@
global.locale = {
id: 'nl',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/nl')

7
locales/pl.js

@ -0,0 +1,7 @@
global.locale = {
id: 'pl',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/pl')

7
locales/pt-br.js

@ -0,0 +1,7 @@
global.locale = {
id: 'pt-br',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/pt-br')

7
locales/pt.js

@ -0,0 +1,7 @@
global.locale = {
id: 'pt',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/pt')

7
locales/ro.js

@ -0,0 +1,7 @@
global.locale = {
id: 'ro',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/ro')

7
locales/ru.js

@ -0,0 +1,7 @@
global.locale = {
id: 'ru',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/ru')

7
locales/sr.js

@ -0,0 +1,7 @@
global.locale = {
id: 'sr',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/sr')

7
locales/uk.js

@ -0,0 +1,7 @@
global.locale = {
id: 'uk',
moment: require('moment'),
osmDateFormatTemplates: require('openstreetmap-date-format/templates/en')
}
require('moment/locale/uk')

4
package.json

@ -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"
},

2
src/index.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)

4
src/twigFunctions.js

@ -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)

Loading…
Cancel
Save