diff --git a/templates/Element/Form/media.twig b/templates/Element/Form/media.twig index 134c4e7d8..b1617732a 100644 --- a/templates/Element/Form/media.twig +++ b/templates/Element/Form/media.twig @@ -60,6 +60,19 @@ {% if object.type == 'images' %} {% set thumb = stream.attributes.mime_type == 'image/svg+xml' ? stream.meta.url : Thumb.getUrl(object) %} {% endif %} + {% set streamAttributesByVersion = {} %} + {% for s in streams %} + {% set streamVersion = s.attributes.version|default(s.meta.version|default(__('Default'))) %} + {% set versionKey = streamVersion ~ '' %} + {% if streamAttributesByVersion[versionKey] is not defined %} + {% set streamAttributesByVersion = streamAttributesByVersion|merge({ + (versionKey): { + label: streamVersion, + attributes: s.attributes|merge(s.meta), + } + }) %} + {% endif %} + {% endfor %} {% set thumbCodes = { notAcceptable: constant('BEdita\\WebTools\\View\\Helper\\ThumbHelper::NOT_ACCEPTABLE'), notAvailable: constant('BEdita\\WebTools\\View\\Helper\\ThumbHelper::NOT_AVAILABLE'), @@ -124,7 +137,7 @@ - {% if attributes %} + {% if streamAttributesByVersion is defined and streamAttributesByVersion %}
- - - {% for k, val in attributes %} - {% if val and k != 'file_metadata' %} - - - - - {% endif %} - {% endfor %} - -
{{ Layout.tr(k) }} : - {% if k == 'url' %} - {{ val }} - {% elseif in_array(k, ['created', 'modified']) %} - {{ Schema.format(val, {'type': 'string', 'format': 'date-time'}) }} - {% elseif k == 'file_size' %} - {{ Schema.format(val, {'type': 'byte'}) }} - {% elseif k == 'duration' %} - {{ val|date('H:i:s', '+00:00 GMT') }} - {% elseif k == 'private_url' %} - {{ Schema.format(val, {'type': 'boolean'}) }} - {% else %} - {{ val }} - {% endif %} -
- {% if attributes.file_metadata %} + {% for versionKey, streamData in streamAttributesByVersion %}
-

{{ __('Metadata') }}

-
- -
+ {% if streams|length > 1 %} +

{{ __('Version') }} {{ streamData.label }}

+ {% endif %} + + + {% for k, val in streamData.attributes %} + {% if val and k != 'file_metadata' %} + + + + + {% endif %} + {% endfor %} + +
{{ Layout.tr(k) }} : + {% if k == 'url' %} + {{ val }} + {% elseif in_array(k, ['created', 'modified']) %} + {{ Schema.format(val, {'type': 'string', 'format': 'date-time'}) }} + {% elseif k == 'file_size' %} + {{ Schema.format(val, {'type': 'byte'}) }} + {% elseif k == 'duration' %} + {{ val|date('H:i:s', '+00:00 GMT') }} + {% elseif k == 'private_url' %} + {{ Schema.format(val, {'type': 'boolean'}) }} + {% else %} + {{ val }} + {% endif %} +
+ {% if streamData.attributes.file_metadata %} +
+

{{ __('Metadata') }}

+
+ +
+
+ {% endif %}
- {% endif %} + {% endfor %}