{% macro undo_buttons(entry, target_element) %} {# @var entry \App\Entity\LogSystem\ElementEditedLogEntry|\App\Entity\LogSystem\ElementDeletedLogEntry entry #} {% set disabled = not is_granted('revert_element', entry.targetClass) %} {% if entry is instanceof('App\\Entity\\LogSystem\\CollectionElementDeleted') or (entry is instanceof('App\\Entity\\LogSystem\\ElementDeletedLogEntry') and entry.hasOldDataInformation) %} {% set icon = 'fa-trash-restore' %} {% set title = 'log.undo.undelete'|trans %} {% set title_short = 'log.undo.undelete.short'|trans %} {% elseif entry is instanceof('App\\Entity\\LogSystem\\ElementCreatedLogEntry') or (entry is instanceof('App\\Entity\\LogSystem\\ElementEditedLogEntry') and entry.hasOldDataInformation) %} {% set icon = 'fa-undo' %} {% set title = 'log.undo.undo'|trans %} {% set title_short = 'log.undo.undo.short'|trans %} {% endif %}
{% endmacro %} {% macro comment_field(entry) %} {# @var entry \App\Entity\Contracts\LogWithComment #}{% trans %}edit.log_comment{% endtrans %}: {% if entry.comment %} {{ entry.comment }} {% else %} {% trans %}log.no_comment{% endtrans %} {% endif %}
{% endmacro %} {% macro translate_field(field) %} {% set trans_key = 'log.element_edited.changed_fields.'~field %} {# If the translation key is not found, the translation key is returned, and we dont show the translation #} {% if trans_key|trans != trans_key %} {{ ('log.element_edited.changed_fields.'~field) | trans }} ({{ field }}) {% else %} {{ field }} {% endif %} {% endmacro %} {% macro data_change_table(entry) %} {# @var entry \App\Entity\LogSystem\ElementEditedLogEntry|\App\Entity\LogSystem\ElementDeletedLogEntry entry #} {% set fields, old_data, new_data = {}, {}, {} %} {# For log entries where only the changed fields are saved, this is the last executed assignment #} {% if attribute(entry, 'changedFieldInfo') is defined and entry.changedFieldsInfo %} {% set fields = entry.changedFields %} {% endif %} {# For log entries, where we know the old data, this is the last exectuted assignment #} {% if attribute(entry, 'oldDataInformation') is defined and entry.oldDataInformation %} {# We have to use the keys of oldData here, as changedFields might not be available #} {% set fields = entry.oldData | keys %} {% set old_data = entry.oldData %} {% endif %} {# For log entries, where we have new data, we define it #} {% if attribute(entry, 'newDataInformation') is defined and entry.newDataInformation %} {# We have to use the keys of oldData here, as changedFields might not be available #} {% set fields = entry.newData | keys %} {% set new_data = entry.newData %} {% endif %} {% if fields is not empty %}{% trans %}log.element_changed.field{% endtrans %} | {% if old_data is not empty %}{% trans %}log.element_changed.data_before{% endtrans %} | {% endif %} {% if new_data is not empty %}{% trans %}log.element_changed.data_after{% endtrans %} | {% endif %} {% if new_data is not empty and old_data is not empty %} {# Diff column #}{% trans %}log.element_changed.diff{% endtrans %} | {% endif %}
---|---|---|---|
{{ _self.translate_field(field) }} | {% if old_data is not empty %}{% if old_data[field] is defined %} {{ format_log_data(old_data[field], entry, field) }} {% endif %} | {% endif %} {% if new_data is not empty %}{% if new_data[field] is defined %} {{ format_log_data(new_data[field], entry, field) }} {% endif %} | {% endif %} {% if new_data is not empty and old_data is not empty %}{% if new_data[field] is defined and old_data[field] is defined %} {{ format_log_diff(old_data[field], new_data[field]) }} {% endif %} | {% endif %}