object_imageattachments.html 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. {% extends base_template %}
  2. {% load helpers %}
  3. {% load i18n %}
  4. {% load render_table from django_tables2 %}
  5. {% load thumbnail %}
  6. {% block extra_controls %}
  7. {% if perms.extras.add_imageattachment %}
  8. {% with viewname=object|viewname:"image-attachments" %}
  9. <a href="{% url 'extras:imageattachment_add' %}?object_type={{ object|content_type_id }}&object_id={{ object.pk }}&return_url={% url viewname pk=object.pk %}" class="btn btn-primary">
  10. <span class="mdi mdi-plus-thick" aria-hidden="true"></span> {% trans "Attach an Image" %}
  11. </a>
  12. {% endwith %}
  13. {% endif %}
  14. {% endblock %}
  15. {% block content %}
  16. {% if image_attachments %}
  17. <div class="d-flex flex-wrap">
  18. {% for object in image_attachments %}
  19. <div class="thumbnail m-2">
  20. {% thumbnail object.image "200x200" crop="center" as tn %}
  21. <a href="{{ object.get_absolute_url }}" class="d-block" title="{{ object.name }}">
  22. <img
  23. src="{{ tn.url }}"
  24. width="{{ tn.width }}"
  25. height="{{ tn.height }}"
  26. class="rounded"
  27. alt="{{ object.description|default:object.name }}"
  28. />
  29. </a>
  30. {% endthumbnail %}
  31. <div class="text-center text-secondary text-truncate fs-5">
  32. {{ object }}
  33. </div>
  34. </div>
  35. {% endfor %}
  36. </div>
  37. {% else %}
  38. <div class="alert alert-info">
  39. {% blocktrans with object_type=object|meta:"verbose_name" %}
  40. No images have been attached to this {{ object_type }}.
  41. {% endblocktrans %}
  42. </div>
  43. {% endif %}
  44. {% endblock %}