From dc2ab522b2dceb591cc827b3dae0324562f077e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20B=C3=B6sch-Plepelits?= Date: Fri, 23 Jun 2017 13:42:32 +0200 Subject: [PATCH] tagTranslations: localizedTag() twig function --- index.js | 1 + src/tagTranslations.js | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/index.js b/index.js index 69041d60..297a65f1 100644 --- a/index.js +++ b/index.js @@ -40,6 +40,7 @@ window.onload = function() { show('gastro/n281657531', function () {}) + tagTranslations.setTagLanguage('de') tagTranslations.load('node_modules/openstreetmap-tag-translations', 'de', function (err) { if (err) { alert('Error loading translations: ' + err) diff --git a/src/tagTranslations.js b/src/tagTranslations.js index 81e6dfce..2a8d5230 100644 --- a/src/tagTranslations.js +++ b/src/tagTranslations.js @@ -1,9 +1,17 @@ var OverpassLayer = require('overpass-layer') var translations = null +var tagLang = null OverpassLayer.twig.extendFunction('tagTrans', function () { return tagTranslationsTrans.apply(this, arguments) }) +OverpassLayer.twig.extendFunction('localizedTag', function (tags, id) { + if (tagLang && id + ':' + tagLang in tags) { + return tags[id + ':' + tagLang] + } + + return tags[id] +}) function tagTranslationsLoad (path, lang, callback) { var req = new XMLHttpRequest() @@ -82,5 +90,8 @@ function tagTranslationsTrans () { module.exports = { load: tagTranslationsLoad, - trans: tagTranslationsTrans + trans: tagTranslationsTrans, + setTagLanguage: function (lang) { + tagLang = lang + } }