{% extends "process/base.html" %} {% load nm %} {% load js %} {% block head_resources %} {{block.super}} {% jsinclude "nm" %} {% endblock %} {% block content %}

{{person}} / {{process.applying_for|desc_status}}

{% with status=process.compute_status %} {% if process.closed %} {% endif %} {% if "advocate" in status.requirements %} {% endif %} {% with process.current_am_assignment as am %} {% if am %} {% endif %} {% endwith %} {% if "edit_ldap" in visit_perms %} {% endif %} {% if "fd_comments" in visit_perms %} {% endif %} {% if "view_mbox" in visit_perms %} {% comment %} TODO: Requires porting stats backend to new Process {% if mbox_stats %} {% endif %} {% endcomment %} {% endif %}
Applicant {{person.fullname}} <{{person.preferred_email}}> (currently {{person.status|desc_status}})
Applying for {{process.applying_for|desc_status}}
Activity timespan{{status.log_first.logdate|date:"Y-m-d"}} to {{status.log_last.logdate|date:"Y-m-d"}}
Status {% if process.frozen_by %} {% if process.approved_by %} Approved by {{process.approved_by.a_link}} on {{process.approved_time|date:"Y-m-d"}}. {% else %} Frozen for review by {{process.frozen_by.a_link}} on {{process.frozen_time|date:"Y-m-d"}}. {% endif %} {% else %} {% if process.approved_by %} Inconsistent state: approved by {{process.approved_by.a_link}} on {{process.approved_time|date:"Y-m-d"}}, but not frozen for review. {% elif not status.requirements_missing %} Waiting for review. {% else %} Collecting requirements. {% endif %} {% endif %}
Completed {{process.closed|date:"Y-m-d"}}
Advocate{{status.advocates|pluralize}} {% for a in status.advocates %} {{a.a_link}}{% if not forloop.last %}, {% endif %} {% empty %} none yet {% endfor %}
Application Manager {{am.am.person.a_link}} assigned by {{am.assigned_by.a_link}} on {{am.assigned_time|date:"Y-m-d"}} {% if "am_unassign" in visit_perms %}
{% csrf_token %}
{% endif %}
Debian account name {% if "edit_ldap" in visit_perms %} {% if person.uid %} {{person.uid}} {% else %} ✘ missing {% endif %} {% else %} {% if person.uid %} {{person.uid}} {% else %} ✘ missing {% endif %} {% endif %}
LDAP information cn={{person.cn}}, mn={{person.mn}}, sn={{person.sn}}, email={{person.email_ldap}}, uid={{person.uid}} [edit]
Missing requirements {% if status.requirements_missing %} {% for req in status.requirements_missing %} {{req}}{% if not forloop.last %},{% endif %} {% endfor %} {% else %} none {% endif %}
Requirements ok {% if status.requirements_ok %} {% for req in status.requirements_ok %} {{req}}{% if not forloop.last %},{% endif %} {% endfor %} {% else %} none {% endif %}
FD comments{{process.fd_comment}}
Mail archive {{process.archive_email}} {% if process.mailbox_file %} (download mail archive) (display mail archive) {% else %} (no mail archive yet) {% endif %}
Mailbox stats {{mbox_stats.date_first_py|date:"Y-m-d"}} to {{mbox_stats.date_last_py|date:"Y-m-d"}}, {{mbox_stats.num_mails}} mails,
{% if mbox_stats.median_py %} {% if mbox_stats.median_py.days %}{{mbox_stats.median_py.days}}d {% endif %}{{mbox_stats.median_hours}}h median response time {% endif %}

Requirements

{% for req in status.requirements_sorted %} {% with req.compute_status as rstatus %} {% endwith %} {% endfor %}
Requirement Approved by Approved date Notes
{{req}} {% if req.approved_by %} {{req.approved_by.a_link}} {% else %} - {% endif %} {% if req.approved_time %} {{req.approved_time|date:"Y-m-d"}} {% else %} - {% endif %} {% for nclass, ntext in rstatus.notes %} {{ntext}}{% if not forloop.last %}
{% endif %} {% endfor %}
(download all signed statements in a single mailbox file) {% if visitor.is_admin and process.frozen_by %}
Draft RT ticket{% endif %}

Log

{% include "process/log_widget.html" with entries=status.log %} {% endwith %} {% endblock %}