@ -5,6 +5,9 @@ var tagLang = null
OverpassLayer . twig . extendFunction ( 'tagTrans' , function ( ) {
return tagTranslationsTrans . apply ( this , arguments )
} )
OverpassLayer . twig . extendFunction ( 'tagTransList' , function ( ) {
return tagTranslationsTransList . apply ( this , arguments )
} )
OverpassLayer . twig . extendFunction ( 'localizedTag' , function ( tags , id ) {
if ( tagLang && id + ':' + tagLang in tags ) {
return tags [ id + ':' + tagLang ]
@ -88,6 +91,24 @@ function tagTranslationsTrans () {
}
}
function tagTranslationsTransList ( key , values ) {
if ( typeof values === 'undefined' ) {
return null
}
values = values . split ( ';' )
values = values . map ( function ( key , value ) {
return tagTranslationsTrans ( key , value . trim ( ) )
} . bind ( this , key ) )
if ( values . length > 1 )
return values . slice ( 0 , - 1 ) . join ( ', ' ) + ' and ' + values . slice ( - 1 ) [ 0 ]
return values [ 0 ]
}
module . exports = {
load : tagTranslationsLoad ,
trans : tagTranslationsTrans ,