From 16f9ddc4e3d0ac323ce30d25f650e022d248ba6d Mon Sep 17 00:00:00 2001
From: Robin Tissot <tissotrobin@gmail.com>
Date: Fri, 20 Nov 2020 15:29:40 +0100
Subject: [PATCH] Fixes pdf not working in docker and wrong help_text in import
 pdf modal.

---
 app/Dockerfile                                       |  2 +-
 app/apps/api/views.py                                |  2 +-
 app/apps/bootstrap/templatetags/bootstrap.py         |  2 ++
 .../templates/core/wizards/import_pdf.html           |  3 ++-
 .../templates/django/forms/widgets/field.html        | 12 ++++++++----
 app/requirements.txt                                 |  1 +
 6 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/app/Dockerfile b/app/Dockerfile
index 2ead9da5..f87513b7 100644
--- a/app/Dockerfile
+++ b/app/Dockerfile
@@ -1,5 +1,5 @@
 # pull official base image
-FROM python:3.7.5-stretch
+FROM python:3.7.5-buster
 
 # ARG KRAKEN_VERSION=3.0b5
 # EXPOSE 8000
diff --git a/app/apps/api/views.py b/app/apps/api/views.py
index 69a424a6..baea888e 100644
--- a/app/apps/api/views.py
+++ b/app/apps/api/views.py
@@ -340,7 +340,7 @@ class LineTranscriptionViewSet(DocumentPermissionMixin, ModelViewSet):
             if serializer.is_valid():
                 try:
                     lt.new_version(author=request.user.username,
-                               source=settings.VERSIONING_DEFAULT_SOURCE)
+                                   source=settings.VERSIONING_DEFAULT_SOURCE)
                 except NoChangeException:
                     pass
 
diff --git a/app/apps/bootstrap/templatetags/bootstrap.py b/app/apps/bootstrap/templatetags/bootstrap.py
index dcf4e978..b481f396 100644
--- a/app/apps/bootstrap/templatetags/bootstrap.py
+++ b/app/apps/bootstrap/templatetags/bootstrap.py
@@ -23,6 +23,8 @@ def render_field(field, group=False, **kwargs):
     tplt = template.loader.get_template('django/forms/widgets/field.html')
     if 'class' in kwargs and 'class' in field.field.widget.attrs:
         kwargs['class'] = field.field.widget.attrs['class'] + " " + kwargs['class']
+    if 'help_text' in kwargs:
+        field.help_text = kwargs.pop('help_text')
 
     field.field.widget.attrs.update(**{k.replace('_', '-'): v
                                        for k, v in kwargs.items()
diff --git a/app/escriptorium/templates/core/wizards/import_pdf.html b/app/escriptorium/templates/core/wizards/import_pdf.html
index c62b9ab1..af74dc45 100644
--- a/app/escriptorium/templates/core/wizards/import_pdf.html
+++ b/app/escriptorium/templates/core/wizards/import_pdf.html
@@ -10,7 +10,8 @@
 {% if not import_form.current_import.ongoing %}
 <h5>{% trans "Import images from a PDF document." %}</h5>
 <div class="form-group">
-  {% render_field import_form.upload_file class="js-proc-settings" accept=".pdf" %}
+    {% trans "A single pdf with one image per page." as help_text %}
+    {% render_field import_form.upload_file class="js-proc-settings" accept=".pdf" help_text=help_text %}
 </div>
 {% endif %}
 {% endblock %}
diff --git a/app/escriptorium/templates/django/forms/widgets/field.html b/app/escriptorium/templates/django/forms/widgets/field.html
index 5b12acbc..9b686d4f 100644
--- a/app/escriptorium/templates/django/forms/widgets/field.html
+++ b/app/escriptorium/templates/django/forms/widgets/field.html
@@ -1,8 +1,12 @@
 {% if not group %}<div class="form-group">{% endif %}
-  {% if field.field.widget.need_label %}<label class="my-1 mr-1" for="{{ field.name }}">{{ field.label }}</label>{% endif %}
-  {{ field }}
-{% if not group %}
-  {% if field.help_text %}<small id="{{field.name}}Help" class="form-text text-muted">{{field.help_text|safe}}</small>{% endif %}
+    {% if field.field.widget.need_label %}<label class="my-1 mr-1" for="{{ field.name }}">{{ field.label }}</label>{% endif %}
+    {{ field }}
+    {% if not group %}
+    {% if field.help_text %}
+    <small id="{{field.name}}Help" class="form-text text-muted">
+        {{ field.help_text|safe }}
+    </small>
+    {% endif %}
   {% for error in field.errors %}<div class="invalid-feedback">{{ error }}</div>{% endfor %}
 </div>
 {% endif %}
diff --git a/app/requirements.txt b/app/requirements.txt
index e9465ea0..6e8ab179 100644
--- a/app/requirements.txt
+++ b/app/requirements.txt
@@ -23,3 +23,4 @@ numpy>=1.17
 django-compressor==2.4
 albumentations
 django-simple-captcha==0.5.12
+pyvips==2.1.12
-- 
GitLab