{% extends "base.html" %} {% block title %}Notification Recipients — {{ project.name }}{% endblock %} {% block content %}

Notification Recipients

Additional recipients notified for events in {{ project.name }} facilities — on top of the global {% if current_user.role == 'admin' %}notification matrix{% else %}notification matrix (admin-managed){% endif %}.

Back to Contract
{# ── Recipient list ── #}
Additional Notification Recipients {{ recipients|length }}
{# ── Add / update form (collapsed) ── #}
{% for key, label in matrix_events.items() %}
{% endfor %}
Adding an existing recipient again replaces their event list. Staff users receive in-app + email notifications; external addresses receive email only.
{% if recipients %}
{% for r in recipients %} {% endfor %}
Recipient Type Notified Events
{% if r.is_staff %} {{ r.user.display_name }}
{{ r.user.email or 'no email on file' }}
{% else %} {{ r.email }} {% endif %}
{% if r.is_staff %} Staff · in-app + email {% else %} External · email {% endif %}
{% for ev in r.get_events() %} {{ matrix_events.get(ev, ev) }} {% endfor %}
{% else %}
No additional recipients configured for this contract yet. Events fall through to the global notification matrix only.
{% endif %}
{% endblock %}