{# Specific extensions, then specific mimetypes, then general mimtypes #} {% set thumbnails = { "svg": "svg", "application/zip": "archive", "application/x-tar": "archive", "archive": "archive", "audio": "audio", "image": "image", "video": "video", "text": "txt", } %} {% macro create_photo_card(photo, view="grid") %} {% set view = (view if view in ("list", "grid") else "grid") %} {% set metadata_inner = "" %} {% if photo.width %} {% set metadata_inner = "{m}{w}×{h}, ".format(m=metadata_inner, w=photo.width, h=photo.height) %} {% endif %} {% if photo.duration %} {% set metadata_inner = "{m}{d}, ".format(m=metadata_inner, d=photo.duration_string) %} {% endif -%}
{{photo.basename}}
{{- metadata_inner|safe -}} {{photo.bytestring}} {% if view == "grid" %} {% if photo.thumbnail %} {% set thumbnail_src = "/thumbnail/" + photo.id + ".jpg" %} {% else %} {% set thumbnail_src = thumbnails.get(photo.extension, "") or thumbnails.get(photo.mimetype, "") or thumbnails.get(photo.simple_mimetype, "") or "other" %} {% set thumbnail_src = "/static/basic_thumbnails/" + thumbnail_src + ".png" %} {% endif -%} {% set tag_names_title = [] %} {% for tag in photo.get_tags() %} {% do tag_names_title.append(tag.name) %} {% endfor -%} {% set tag_names_title = ", ".join(tag_names_title) %} {% if tag_names_title %} {% set tag_names_inner = "T" %} {% else %} {% set tag_names_inner = "" %} {% endif -%} {{tag_names_inner}} {% endif %}
{% endmacro %}