From ddb8995113336b529e17a8775755c213423d76a7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stephan=20B=C3=B6sch-Plepelits?= <skunk@xover.mud.at>
Date: Sun, 15 Sep 2024 14:10:31 +0200
Subject: [PATCH] etymology: hide name:etymology from default body, show in
 category body

---
 detailsBody.html |  2 +-
 etymology.yaml   | 22 ++++++++++++++--------
 popupBody.html   |  2 +-
 3 files changed, 16 insertions(+), 10 deletions(-)

diff --git a/detailsBody.html b/detailsBody.html
index 494fff5..58de94c 100644
--- a/detailsBody.html
+++ b/detailsBody.html
@@ -35,7 +35,7 @@
 </li>
 {% endif %}
 
-{% if attribute(tags, 'name:etymology') or attribute(tags, 'name:etymology:wikidata') %}
+{% if layer_id|split('/')|last != 'etymology' and (attribute(tags, 'name:etymology') or attribute(tags, 'name:etymology:wikidata')) %}
 <li class='hasSymbol'>
   <i class="fa fa-book" aria-hidden="true"></i>
   <span class='key'>{{ keyTrans('name:etymology') }}:</span>
diff --git a/etymology.yaml b/etymology.yaml
index af79f53..71168b2 100644
--- a/etymology.yaml
+++ b/etymology.yaml
@@ -34,18 +34,24 @@ feature:
 
   body: |
     <ul>
-    {% if not attribute(tags, "name:etymology") and attribute(tags, 'name:etymology:wikidata') %}
+    {% if attribute(tags, "name:etymology") or attribute(tags, 'name:etymology:wikidata') %}
     <li class='hasSymbol'>
       <i class="fa fa-book" aria-hidden="true"></i>
       <span class='key'>{{ keyTrans('name:etymology') }}:</span>
       <span class='value'>
-      {% for i, wd in attribute(tags, 'name:etymology:wikidata')|split(';') %}
-        {%- if i != 0 %},{% endif %}
-        {% if wd %}
-          {% set wikidata = wd|wikidataEntity %}
-          {{ wikidata ? (wikidata.labels[user.data_lang]|default(wikidata.labels[user.ui_lang])|default(wikidata.labels.en)).value : wd }}
-        {% endif %}
-      {% endfor %}
+      {% set etymWikidata = attribute(tags, 'name:etymology:wikidata') %}
+      {% if etymWikidata %}
+        {% set etymWikidata = etymWikidata|split(';') %}
+        {% set etymName = attribute(tags, 'name:etymology')|split(';') %}
+
+        {% set result = [] %}
+        {% for i in 0..max(etymName|length - 1, etymWikidata|length - 1) %}
+          {% set result = result|merge([ etymWikidata[i] ? '<a target="_blank" href="https://wikidata.org/wiki/' ~ etymWikidata[i]|url_encode ~ '">' ~ (etymName[i]|default(etymWikidata[i]))|e ~ '</a>' : etymName[i]|e ]) %}
+        {% endfor %}
+        {{ result|enumerate|raw }}
+      {% else %}
+        {{ attribute(tags, "name:etymology")|enumerate }}
+      {% endif %}
       </span>
     </li>
     {% endif %}
diff --git a/popupBody.html b/popupBody.html
index caf7579..0369630 100644
--- a/popupBody.html
+++ b/popupBody.html
@@ -35,7 +35,7 @@
 </li>
 {% endif %}
 
-{% if attribute(tags, 'name:etymology') or attribute(tags, 'name:etymology:wikidata') %}
+{% if layer_id|split('/')|last != 'etymology' and (attribute(tags, 'name:etymology') or attribute(tags, 'name:etymology:wikidata')) %}
 <li class='hasSymbol'>
   <i class="fa fa-book" aria-hidden="true"></i>
   <span class='key'>{{ keyTrans('name:etymology') }}:</span>