From d12eae48305d815a21d6c83456cd5c2d1954a5bc Mon Sep 17 00:00:00 2001
From: Arne Baeumler <arne@br0tkasten.de>
Date: Sat, 5 Jun 2021 15:01:11 +0200
Subject: [PATCH] page break nach 80 Aufgaben und Drop Down Aufgaben

---
 app.py                      | 8 +++++++-
 templates/arbeitsblatt.html | 3 +++
 templates/base.html         | 2 +-
 templates/generator.html    | 8 ++++++++
 4 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/app.py b/app.py
index 75261a9..0ffd884 100644
--- a/app.py
+++ b/app.py
@@ -39,7 +39,13 @@ def index():
         zufall = []
         for r in request.form.getlist('rechenreihen'):
             alle.extend(rechenreihen[r])
-        while len(alle):
+
+        if request.form.get('anzahl'):
+            count = (int(request.form.get('anzahl')) + 1) 
+        else:
+            count = len(alle)
+
+        for i in range(1,count):
             zufall.append(alle.pop(random.randint(0,len(alle)-1)))
         return render_template('arbeitsblatt.html',aufgaben=zufall)
     else:
diff --git a/templates/arbeitsblatt.html b/templates/arbeitsblatt.html
index d5952ac..8094a2e 100644
--- a/templates/arbeitsblatt.html
+++ b/templates/arbeitsblatt.html
@@ -4,6 +4,9 @@
 <div class="w3-responsive">
     {% for a in aufgaben %}
             <table class="w3-left" width="auto"><tr><td class="w3-right-align" style="width: 5em">{{ a }}</td><td> = </td><td class="w3-border-bottom" style="width: 5em; height: 2em"></td></tr></table>
+            {% if loop.index % 80 == 0 %} 
+            <div style="break-after: page;"></div>
+            {% endif %}
     {% endfor %}
 </div>
 {% endblock %}
\ No newline at end of file
diff --git a/templates/base.html b/templates/base.html
index 54dc429..ac501c0 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -16,7 +16,7 @@
     {% block content %}{% endblock %}
 </div>
 <footer class="w3-container w3-blue-grey w3-center" style="position: fixed; bottom: 0; width: 100vw; height: 1.5em">
-    {% block footer %}<span>(c) br0tkasten.de</span>{% endblock %}
+    {% block footer %}<span>{{ request.base_url }}</span>{% endblock %}
 </footer>
 </body>
 </html>
\ No newline at end of file
diff --git a/templates/generator.html b/templates/generator.html
index aebe1cb..058a67f 100644
--- a/templates/generator.html
+++ b/templates/generator.html
@@ -38,6 +38,14 @@
                 </td>
             </tr>
         </table>
+        <label for="anzahl">max. Aufgaben: </label>
+        <select name="anzahl">
+            <option value="">Alle</option>
+            <option value="80">80</option>
+            <option value="40">40</option>
+            <option value="20">20</option>
+        </select>
+        <br/>
         <input type="submit" value="zum Arbeitsblatt">
     </form>
 </div>