From c14e01c764756c1389a127aa66cea49c4a4ce972 Mon Sep 17 00:00:00 2001 From: Piotr Dobrowolski Date: Wed, 29 Apr 2020 14:43:39 +0200 Subject: [PATCH] Add interleaved shipping labels printing --- formity/admin.py | 7 ++++++- templates/label.html | 2 ++ templates/shipping_label.html | 16 ++++++++-------- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/formity/admin.py b/formity/admin.py index 4645d39..abb624e 100644 --- a/formity/admin.py +++ b/formity/admin.py @@ -464,7 +464,12 @@ class FaceshieldRequestAdmin(ModelView): @flask_admin.actions.action('shipping_print', 'Kurjerzy / Print shipping labels') def action_shipping_print(self, ids): models = self.get_query().filter(FaceshieldRequest.id.in_(ids)).all() - return render_pdf(HTML(string=self.render('shipping_label.html', models=models))) + return render_pdf(HTML(string=self.render('shipping_label.html', models=models, interleaved=False))) + + @flask_admin.actions.action('shipping_print_interleaved', 'Kurjerzy / Print shipping labels (interleaved)') + def action_shipping_print_interleaved(self, ids): + models = self.get_query().filter(FaceshieldRequest.id.in_(ids)).all() + return render_pdf(HTML(string=self.render('shipping_label.html', models=models, interleaved=True))) @flask_admin.actions.action('shipping_refresh', 'Shipping / Refresh tracking info') def action_shipping_refresh(self, ids): diff --git a/templates/label.html b/templates/label.html index 33f886e..b2eab2e 100644 --- a/templates/label.html +++ b/templates/label.html @@ -68,6 +68,7 @@ html, body { {% block content %} {% for model in models %} + {% block model_labels scoped %} {% for label_id in range(model.label_count) %}
@@ -85,6 +86,7 @@ html, body {
{% endfor %} + {% endblock %} {% endfor %} {% endblock %} diff --git a/templates/shipping_label.html b/templates/shipping_label.html index 619a58a..7e9523e 100644 --- a/templates/shipping_label.html +++ b/templates/shipping_label.html @@ -14,14 +14,14 @@ overflow: hidden; height: 100%; } {% endblock %} -{% block content %} -{% for model in models %} - {% for shipment in model.shipping_info %} -
-
- label {{ model.id }} -
+ +{% block model_labels scoped %} +{% if interleaved %}{{ super() }}{% endif %} +{% for shipment in model.shipping_info %} +
+
+ label {{ model.id }}
- {% endfor %} +
{% endfor %} {% endblock %}