home · contact · privacy
Refactor templates. master
authorChristian Heller <c.heller@plomlompom.de>
Mon, 20 Jan 2025 12:33:22 +0000 (13:33 +0100)
committerChristian Heller <c.heller@plomlompom.de>
Mon, 20 Jan 2025 12:33:22 +0000 (13:33 +0100)
templates/_base.tmpl
templates/_macros.tmpl [new file with mode: 0644]
templates/booking.tmpl
templates/index.tmpl
templates/raw.tmpl

index 8e6de415562cae58646f3131985be2c7af922303..2953be26a0a0820ab90b333f71c571017e3abb28 100644 (file)
@@ -1,3 +1,4 @@
+{% import '_macros.tmpl' as macros %}
 <!DOCTYPE html>
 <html>
 <head>
 <!DOCTYPE html>
 <html>
 <head>
diff --git a/templates/_macros.tmpl b/templates/_macros.tmpl
new file mode 100644 (file)
index 0000000..4df4fc6
--- /dev/null
@@ -0,0 +1,42 @@
+{% macro css_value_line() %}
+td.amt { text-align: right }
+td.amt, td.curr { font-family: monospace; font-size: 1.3em; }
+td.curr { text-align: center; }
+{% endmacro %}
+
+{% macro table_dat_lines(dat_lines, single, raw) %}
+<table>
+{% for dat_line in dat_lines %}
+  {% if (not (raw or single)) and dat_line.type == "intro" and loop.index > 1 %}
+    <tr><td colspan=5>&nbsp;</td></tr>
+  {% endif %}
+  <tr class="{{dat_line.type}}">
+  {% if not single %}
+    {% if dat_line.type == "intro" %}
+      <td id="{{dat_line.booking_id}}"><a href="#{{dat_line.booking_id}}">#</a></td>
+    {% else %}
+      <td></td>
+    {% endif %}
+  {% endif %}
+  {% if raw %}
+    {% if dat_line.type == "intro" %}
+      <td><a href="/booking/{{dat_line.booking_id}}"/>{{dat_line.raw_nbsp}}</a></td>
+    {% else %}
+      <td>{{dat_line.raw_nbsp}}</td>
+    {% endif %}
+  {% else %}
+    {% if dat_line.type == "intro" %}
+      <td class="code" colspan=3><a href="/booking/{{dat_line.booking_id}}">{{dat_line.code}}</a></td>
+    {% elif dat_line.type == "value" %}
+      <td class="amt">{{dat_line.booking_line.amt}}</td>
+      <td class="curr">{{dat_line.booking_line.curr|truncate(4,true,"…")}}</td>
+      <td>{{dat_line.booking_line.acc}}</td>
+    {% else %}
+      <td colspan=3>{{dat_line.code}}</td>
+    {% endif %}
+    <td>{{dat_line.comment}}</td>
+  {% endif %}
+  </tr>
+{% endfor %}
+</table>
+{% endmacro %}
index 1bfea6272e90b44f1a5f8ad50e4b06946a3fce4f..86273b9e23a11f8fec60b7234c87df790464d25f 100644 (file)
@@ -1,25 +1,10 @@
 {% extends '_base.tmpl' %}
 
 {% block css %}
 {% extends '_base.tmpl' %}
 
 {% block css %}
-td.amt { text-align: right }
-td.amt, td.curr { font-family: monospace; font-size: 1.3em; }
-td.curr { text-align: center; }
+{{ macros.css_value_line() }}
 {% endblock %}
 
 {% block content %}
 {% endblock %}
 
 {% block content %}
-<table>
-{% for l in dat_lines %}
-  <tr class="{{l.type}}">
-  {% if l.type == "value" %}
-    <td class="amt">{{l.booking_line.amt}}</td><td class="curr">{{l.booking_line.curr|truncate(4,true,"…")}}</td><td>{{l.booking_line.acc}}</td>
-  {% elif l.type == "intro" %}
-    <td class="code" colspan=3><a href="/booking/{{l.booking_id}}">{{l.code}}</a></td>
-  {% else %}
-    <td colspan=3>{{l.code}}</td>
-  {% endif %}
-  <td>{{l.comment}}</td>
-  </tr>
-{% endfor %}
-</table>
+{{ macros.table_dat_lines(dat_lines, single=true, raw=false) }}
 {% endblock %}
 
 {% endblock %}
 
index 301b2d4f7e971928a6cdca4c467a4fdcfce3e46a..fc24e6e9f73918384c66d9995dd8d07a1f9ad2e3 100644 (file)
@@ -1,33 +1,12 @@
 {% extends '_base.tmpl' %}
 
 {% block css %}
 {% extends '_base.tmpl' %}
 
 {% block css %}
-td.amt { text-align: right }
-td.amt, td.curr { font-family: monospace; font-size: 1.3em; }
-td.curr { text-align: center; }
+{{ macros.css_value_line() }}
 {% endblock %}
 
 {% block content %}
 <form action="/" method="POST"><input type="submit" value="A" /></form>
 <form action="/" method="GET"><input type="submit" value="B" /></form>
 <hr/>
 {% endblock %}
 
 {% block content %}
 <form action="/" method="POST"><input type="submit" value="A" /></form>
 <form action="/" method="GET"><input type="submit" value="B" /></form>
 <hr/>
-<table>
-{% for l in dat_lines %}
-  {% if "intro" == l.type and loop.index > 1 %}<tr><td colspan=5>&nbsp;</td></tr>{% endif %}
-  <tr class="{{l.type}}">
-  {% if l.type == "intro" %}
-    <td id="{{l.booking_id}}"><a href="#{{l.booking_id}}">#</a></td>
-  {% else %}
-    <td></td>
-  {% endif %}
-  {% if l.type == "value" %}
-    <td class="amt">{{l.booking_line.amt}}</td><td class="curr">{{l.booking_line.curr|truncate(4,true,"…")}}</td><td>{{l.booking_line.acc}}</td>
-  {% elif l.type == "intro" %}
-    <td class="code" colspan=3><a href="/booking/{{l.booking_id}}">{{l.code}}</a></td>
-  {% else %}
-    <td colspan=3>{{l.code}}</td>
-  {% endif %}
-  <td>{{l.comment}}</td>
-  </tr>
-{% endfor %}
-</table>
+{{ macros.table_dat_lines(dat_lines, single=false, raw=false) }}
 {% endblock %}
 {% endblock %}
index 59e951f1e78f8d510b9bbff85bde1437d7f959d2..6851d939a93bb1919d7d9575db910be58cc8f946 100644 (file)
@@ -5,18 +5,6 @@ table { font-family: monospace; }
 {% endblock %}
 
 {% block content %}
 {% endblock %}
 
 {% block content %}
-<table>
-{% for l in dat_lines %}
-  <tr class="{{l.type}}">
-  {% if l.type == "intro" %}
-    <td id="{{l.booking_id_}}"><a href="#{{l.booking_id}}">#</a></td>
-    <td><a href="/booking/{{l.booking_id}}"/>{{l.raw_nbsp}}</a></td>
-  {% else %}
-    <td></td>
-    <td>{{l.raw_nbsp}}</td>
-  {% endif %}
-  </tr>
-{% endfor %}
-</table>
+{{ macros.table_dat_lines(dat_lines, single=false, raw=true) }}
 {% endblock %}
 
 {% endblock %}