{# update registry: one row per assignment per server. A write that was not saved says so plainly. krn.RESetRegValue changes the running server's memory and nothing else; without `save` the change is gone at the next service restart, and `reload registry` throws it away now. #}
{{ t("registry.badge") }} {{ t("registry.written", n=outcome.rows|selectattr("ok")|list|length) }} {% if outcome.servers %} {{ t("registry.servers", n=outcome.servers|length) }}: {{ outcome.servers|join(", ") }} {% endif %}
{% if not outcome.save_requested and outcome.rows|selectattr("ok")|list %} {% endif %} {% for server, saved, message in outcome.saved %} {% endfor %} {% for failure in outcome.errors %} {% endfor %} {% if outcome.rows %}
{% for row in outcome.rows %} {% endfor %}
{{ t("registry.column.server") }} {{ t("registry.column.path") }} {{ t("registry.old_value") }} {{ t("registry.new_value") }} {{ t("registry.action") }}
{{ row.server }} {{ row.path }} {{ "" if row.old_value is none else row.old_value }} {{ row.new_value }} {% if row.action == "failed" %} {{ t("registry.action.failed") }}
{{ row.message }}
{% elif row.action == "created" %} {{ t("registry.action.created") }} {% elif row.unchanged %} {{ t("registry.action.unchanged") }} {% else %} {{ t("registry.action.set") }} {% endif %}
{% endif %}