From c030704a66e4632732ac9e973b633df032555f83 Mon Sep 17 00:00:00 2001 From: paulmwatson Date: Thu, 12 Dec 2024 14:03:37 +0200 Subject: [PATCH] Safe way to use thumbnails in case file no longer exists --- pombola/core/templatetags/safe_image.py | 9 +++++++++ .../south_africa/templates/core/organisation_people.html | 5 +++++ 2 files changed, 14 insertions(+) create mode 100644 pombola/core/templatetags/safe_image.py diff --git a/pombola/core/templatetags/safe_image.py b/pombola/core/templatetags/safe_image.py new file mode 100644 index 000000000..bfd9c2cf8 --- /dev/null +++ b/pombola/core/templatetags/safe_image.py @@ -0,0 +1,9 @@ +from django import template + +register = template.Library() + +@register.filter +def safe_image_width(image): + if image and hasattr(image, 'width'): + return image.width + return None diff --git a/pombola/south_africa/templates/core/organisation_people.html b/pombola/south_africa/templates/core/organisation_people.html index 3d70bba0a..7f60787ce 100644 --- a/pombola/south_africa/templates/core/organisation_people.html +++ b/pombola/south_africa/templates/core/organisation_people.html @@ -2,6 +2,7 @@ {% load pagination_tags %} {% load staticfiles %} {% load thumbnail %} +{% load safe_image %} {% block title %}{{ object.name }} People{% endblock %} @@ -45,7 +46,11 @@

Show

{% thumbnail person.primary_image "58x78" crop="center" as im %} + {% if im|safe_image_width %} {{ person.name }} + {% else %} + + {% endif %} {% empty %} {% endthumbnail %}