From 0cff620d325cc33392c1eb8149514bac070f9c50 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stephan=20B=C3=B6sch-Plepelits?= <skunk@xover.mud.at>
Date: Wed, 25 Oct 2017 20:57:04 +0200
Subject: [PATCH] unfinished

---
 culture.json                 | 25 +++++++++++++------------
 railway-electrification.json |  8 +++++---
 railway-infrastructure.json  |  6 ++++--
 3 files changed, 22 insertions(+), 17 deletions(-)

diff --git a/culture.json b/culture.json
index 95c723d..1b4b79c 100644
--- a/culture.json
+++ b/culture.json
@@ -25,18 +25,19 @@
     "feature": {
         "pre": "{% if tags.amenity in [ 'arts_centre', 'cinema', 'community_centre', 'fountain', 'studio', 'theatre' ] %}\n{% set key = 'amenity' %}\n{% set value = tags.amenity %}\n{% elseif tags.tourism %}\n{% set key = 'tourism' %}\n{% set value = tags.tourism %}\n{% endif %}",
         "description": "{{ tagTrans(key, value) }}",
-        "markerSign": "{{ const[value] }}"
+        "markerSign": "{{ attribute(const, key ~ '=' ~ value) }}"
     },
     "const": {
-        "arts_centre": "🎨",
-        "cinema": "🎦",
-        "community_centre": "",
-        "fountain": "⛲",
-        "studio": "",
-        "theatre": "🎭",
-        "artwork": "🎨 ",
-        "gallery": "🖼",
-        "museum": "🏛 ",
-        "theme_park": ""
-    }
+        "amenity=arts_centre": "🎨",
+        "amenity=cinema": "🎦",
+        "amenity=community_centre": "",
+        "amenity=fountain": "⛲",
+        "amenity=studio": "",
+        "amenity=theatre": "🎭",
+        "tourism=artwork": "🎨 ",
+        "tourism=gallery": "🖼",
+        "tourism=museum": "🏛 ",
+        "tourism=theme_park": ""
+    },
+    "info": "<table>\n{% for value, sign in const %}\n  <tr>\n    <td>{{ markerCircle({})|raw }}<div class='sign'>{{ sign }}</div></td>\n    <td>{{ tagTrans(value|split('=')[0], value|split('=')[1]) }}</td>\n  </tr>\n{% endfor %}\n</table>"
 }
diff --git a/railway-electrification.json b/railway-electrification.json
index 77efc25..9caee08 100644
--- a/railway-electrification.json
+++ b/railway-electrification.json
@@ -9,7 +9,7 @@
         "14": "way[railway][railway!~'^(platform|abandoned|disused|station|proposed)$'];"
     },
     "feature": {
-        "pre": "{% if tags.electrified and tags.electrified != 'no' %}\n  {% if tags.voltage < 5000 %}\n    {% set color = colorInterpolate([ 'green', 'red' ], tags.voltage / 1000) %}\n  {% else %}\n    {% set color = colorInterpolate([ 'red', 'blue' ], (tags.voltage - 1000) / 24000) %}\n  {% endif %}\n{% else %}\n  {% set color='black' %}\n{%endif %}\n\n{% if tags.service == 'yard' or tags.service == 'siding' or tags.service == 'spur' or tags.service == 'crossover' %}\n    {% set weight=2 %}\n  {% else %}\n    {% if tags.railway == 'rail' %}\n      {% if tags.usage == 'main' or tags.usage == 'branch' %}\n        {% set weight=3 %}\n      {% else %}\n        {% set weight=2.5 %}\n      {% endif %}\n    {% else %}\n      {% set weight=2 %}\n  {% endif %}\n{% endif %}",
+        "pre": "{% if tags.electrified and tags.electrified != 'no' %}\n  {% if tags.voltage < 1000 %}\n    {% set color = colorInterpolate([ '#00ff00', 'blue' ], tags.voltage / 1000) %}\n  {% else %}\n    {% set color = colorInterpolate([ 'blue', 'red' ], (tags.voltage - 1000) / 24000) %}\n  {% endif %}\n{% else %}\n  {% set color='black' %}\n{%endif %}\n\n{% if tags.service == 'yard' or tags.service == 'siding' or tags.service == 'spur' or tags.service == 'crossover' %}\n    {% set weight=2 %}\n  {% else %}\n    {% if tags.railway == 'rail' %}\n      {% if tags.usage == 'main' or tags.usage == 'branch' %}\n        {% set weight=3 %}\n      {% else %}\n        {% set weight=2.5 %}\n      {% endif %}\n    {% else %}\n      {% set weight=2 %}\n  {% endif %}\n{% endif %}",
         "style:casing": {
             "weight": "{{ weight + 2 }}",
             "color": "{{ color }}",
@@ -36,6 +36,8 @@
         "body": "{{ tagTrans('railway', tags.railway) }}<br/>\n{% if tags.operator %}{{ keyTrans('operator') }}: {{ localizedTag(tags, 'operator') }}<br>{% endif %}\n{% if tags.usage %}{{ keyTrans('usage') }}: {{ tagTrans('usage', tags.usage)|default(trans('unknown')) }}<br/>{% endif %}\n{% if tags.service %}{{ keyTrans('service') }}: {{ tagTrans('service', tags.service ) }}<br/>{% endif %}\n{{ keyTrans('gauge') }}: {{ tags.gauge|default(trans('unknown')) }}<br/>\n{% if tags.electrified == 'no' %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', 'no') }}{% elseif tags.electrified %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', tags.electrified) }}, {{ keyTrans('voltage') }}: {{ tags.voltage|default(trans('unknown')) }}, {{ keyTrans('frequency') }}: {{ tags.frequency|default(trans('unknown')) }}<br/>{% endif %}\n",
         "description": "{{ tagTrans('railway', tags.railway) }} -\n\n{% if tags.electrified == 'no' %}\n  {{ trans('not electrified') }}\n{% elseif tags.electrified %}\n  {{ tags.voltage|default(trans('unknown')) }}V, {{ tags.frequency|default(trans('unknown')) }}Hz\n{% endif %}",
         "priority": "{% if tags.railway == 'station' %}0{% elseif tags.railway in [ 'halt', 'tram_stop' ] %}1{% else %}5{% endif %}",
-        "title": "{% if tags.ref %}{{ localizedTag(tags, 'ref') }} - {% endif %}{{ localizedTag(tags, 'name')|default(localizedTag(tags, 'operator'))|default(trans('unnamed')) }}"
-    }
+        "title": "{% if tags.ref %}{{ localizedTag(tags, 'ref') }} - {% endif %}{{ localizedTag(tags, 'name')|default(localizedTag(tags, 'operator'))|default(trans('unnamed')) }}",
+        "listMarkerSymbol": "{{ markerLine({ 'weight': 3, 'color': color })|raw }}"
+    },
+    "info": "<table>\n{% for i in range(0, 1000, 200) %}\n  {% set color = colorInterpolate([ '#00ff00', 'blue' ], i / 1000) %}\n  <tr>\n    <td>{{ markerLine({ 'weight': 3, 'color': color })|raw }}</td>\n    <td>{{ i }}V</td>\n  </tr>\n{% endfor %}\n\n{% for i in range(3000, 25000, 2000) %}\n  {% set color = colorInterpolate([ 'blue', 'red' ], (i - 1000) / 24000) %}\n  <tr>\n    <td>{{ markerLine({ 'weight': 3, 'color': color })|raw }}</td>\n    <td>{{ i }}V</td>\n  </tr>\n{% endfor %}\n</table>"
 }
diff --git a/railway-infrastructure.json b/railway-infrastructure.json
index 3abec53..eedc6b8 100644
--- a/railway-infrastructure.json
+++ b/railway-infrastructure.json
@@ -30,6 +30,8 @@
         "body": "{% if tags.operator %}{{ keyTrans('operator') }}: {{ localizedTag(tags, 'operator') }}<br>{% endif %}\n{% if tags.usage %}{{ keyTrans('usage') }}: {{ tagTrans('usage', tags.usage)|default(trans('unknown')) }}<br/>{% endif %}\n{% if tags.service %}{{ keyTrans('service') }}: {{ tagTrans('service', tags.service ) }}<br/>{% endif %}\n{{ keyTrans('gauge') }}: {{ tags.gauge|default(trans('unknown')) }}<br/>\n{% if tags.electrified == 'no' %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', 'no') }}{% elseif tags.electrified %}{{ keyTrans('electrified') }}: {{ tagTrans('electrified', tags.electrified) }}, {{ keyTrans('voltage') }}: {{ tags.voltage|default(trans('unknown')) }}, {{ keyTrans('frequency') }}: {{ tags.frequency|default(trans('unknown')) }}<br/>{% endif %}\n",
         "description": "{{ tagTrans('railway', tags.railway) }}",
         "priority": "{% if tags.railway == 'station' %}0{% elseif tags.railway in [ 'halt', 'tram_stop' ] %}1{% else %}5{% endif %}",
-        "title": "{% if tags.ref %}{{ localizedTag(tags, 'ref') }} - {% endif %}{{ localizedTag(tags, 'name')|default(localizedTag(tags, 'operator'))|default(trans('unnamed')) }}"
-    }
+        "title": "{% if tags.ref %}{{ localizedTag(tags, 'ref') }} - {% endif %}{{ localizedTag(tags, 'name')|default(localizedTag(tags, 'operator'))|default(trans('unnamed')) }}",
+        "listMarkerSymbol": "{% if tags.railway == 'station' %}\narea\n{% else %}\nline\n{% endif %}"
+    },
+    "info": "<table>\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"rail\", \"usage\": \"main\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'rail') }}, {{ keyTrans('usage') }}: {{ tagTrans('usage', 'main') }}</td>\n  </tr>\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"rail\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'rail') }}</td>\n  </tr>\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"narrow_gauge\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'narrow_gauge') }}</td>\n  </tr>\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"light_rail\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'light_rail') }}</td>\n  </tr>\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"subway\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'subway') }}</td>\n  </tr>\n{{ console_log(map) }}\n{% if map.zoom >= 14 %}\n  <tr>\n    <td>{{ markerLine(evaluate({ \"railway\": \"tram\" }))|raw }}</td>\n    <td>{{ tagTrans('railway', 'tram') }}</td>\n  </tr>\n{% endif %}\n</table>"
 }