{% if data.comment %}
{{ __("Comment") + " (" + data.comment_type }})
{{ data.comment }}
{% endif %}
{% const getEscapedValue = (v) => v === null ? "null" : frappe.utils.escape_html(v) %}
{% const htmlDiffs = (doc.__onload && doc.__onload.html_diffs) || {} %}
{% if data.changed && data.changed.length %}
{{ __("Values Changed") }}
{% for item in data.changed %}
{% if htmlDiffs[item[0]] %}
{{ frappe.meta.get_label(doc.ref_doctype, item[0]) }}
{{ htmlDiffs[item[0]] }}
{% endif %}
{% endfor %}
{% var hasSimpleChanges = data.changed.some(item => !htmlDiffs[item[0]]) %}
{% if hasSimpleChanges %}
| {{ __("Property") }} |
{{ __("Original Value") }} |
{{ __("New Value") }} |
{% for item in data.changed %}
{% if !htmlDiffs[item[0]] %}
| {{ frappe.meta.get_label(doc.ref_doctype, item[0]) }} |
{{ getEscapedValue(item[1]) }} |
{{ getEscapedValue(item[2]) }} |
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% var _keys = ["added", "removed"]; %}
{% for key in _keys %}
{% if data[key] && data[key].length %}
{% var title = key==="added" ? __("Rows Added") : __("Rows Removed"); %}
{{ title }}
| {{ __("Property") }} |
{{ title }} |
{% var values = data[key]; %}
{% for item in values %}
| {{ frappe.meta.get_label(doc.ref_doctype, item[0]) }} |
{% var item_keys = Object.keys(item[1]).sort(); %}
{% for row_key in item_keys %}
| {{ row_key }} |
{{ getEscapedValue(item[1][row_key]) }} |
{% endfor %}
|
{% endfor %}
{% endif %}
{% endfor %}
{% if data.row_changed && data.row_changed.length %}
{{ __("Row Values Changed") }}
| {{ __("Table Field") }} |
{{ __("Row #") }} |
{{ __("Property") }} |
{{ __("Original Value") }} |
{{ __("New Value") }} |
{% var values = data.row_changed; %}
{% for table_info in values %}
{% var _changed = table_info[3]; %}
{% for item in _changed %}
| {{ frappe.meta.get_label(doc.ref_doctype, table_info[0]) }} |
{{ table_info[1] }} |
{{ item[0] }} |
{{ getEscapedValue(item[1]) }} |
{{ getEscapedValue(item[2]) }} |
{% endfor %}
{% endfor %}
{% endif %}