datatracker/ietf/templates/group/group_about.html

336 lines
14 KiB
HTML

{% extends "group/group_base.html" %}
{# Copyright The IETF Trust 2015, All Rights Reserved #}
{% load origin %}
{% load ietf_filters %}
{% load markup_tags %}
{% load textfilters group_filters %}
{% block group_content %}
{% origin %}
{% if group.state_id == "conclude" %}
<p class="alert alert-warning my-3">
<b>Note:</b> The data for concluded {{ group.type.name }}s is occasionally incorrect.
</p>
{% endif %}
<table class="my-3 table table-sm table-borderless">
<tbody class="meta border-top">
<tr>
<th>{{ group.type.name }}</th>
<th>Name</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='name' %}">Edit</a>
{% endif %}
</td>
<th>{{ group.name }}</th>
</tr>
<tr>
<td></td>
<th>Acronym</th>
<td class="edit"></td>
<td>{{ group.acronym }}</td>
</tr>
<tr>
<td></td>
{% if group.parent and group.parent.type_id == "area" %}
<th>{{ group.parent.type.name }}</th>
<td class="edit"></td>
<td>
{{ group.parent.name }}
<a href="{% url "ietf.group.views.group_home" acronym=group.parent.acronym %}">({{ group.parent.acronym }})</a>
</td>
{% else %}
<th></th>
<td class="edit"></td>
<td></td>
{% endif %}
</tr>
<tr>
<td></td>
<th>State</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='state' %}">Edit</a>
{% endif %}
</td>
<td>
<span class="{% if group.state.name|slugify == 'active' %}text-success{% elif group.state.name|slugify == 'concluded' %}text-danger{% endif %}">{{ group.state.name }}</span>
{% if requested_close %}<div class="badge bg-info">Being closed</div>{% endif %}
</td>
</tr>
{% if group.features.has_chartering_process %}
<tr>
<td></td>
<th>Charter</th>
<td class="edit"></td>
<td>
{% if group.charter %}
<a href="{% url "ietf.doc.views_doc.document_main" name=group.charter.name %}">
{{ group.charter.name }}-{{ group.charter.rev }}</a>
<span class="badge bg-info">{{ group.charter.get_state.name }}</span>
{% else %}
<span class="text-muted">(None)</span>
{% if user|has_role:"Area Director,Secretariat" %}
<a class="btn btn-warning btn-sm" href="{{ charter_submit_url }}">Submit charter</a>
{% endif %}
{% endif %}
</td>
</tr>
{% endif %}
{% if can_provide_status_update or status_update %}
<tr id='status_update'>
<td>
</td>
<th>
Status update
</th>
<td class="edit">
{% if can_provide_status_update %}
<a class="btn btn-primary btn-sm"
href="{% url "ietf.group.views.group_about_status_edit" acronym=group.acronym %}">
Edit
</a>
{% endif %}
</td>
<td>
{% if status_update %}
<a class="btn btn-primary btn-sm"
href="{% url "ietf.group.views.group_about_status" acronym=group.acronym %}">
Show
</a>
<span class="badge bg-secondary">
Changed {{ status_update.time|date:"Y-m-d" }}
</span>
{% else %}
<span class="text-muted">
(None)
</span>
{% endif %}
</td>
</tr>
{% endif %}
{% if group.features.has_documents %}
<tr id='dependency_graph'>
<td>
</td>
<th>
Document dependencies
</th>
<td class="edit">
</td>
<td>
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.dependencies' group_type=group.type_id acronym=group.acronym output_type='svg' %}">
SVG <i class="bi bi-diagram-3"></i>
</a>
</td>
</tr>
{% endif %}
{% with group.groupextresource_set.all as resources %}
{% if resources or can_edit_group %}
<tr>
<td>
</td>
<th>
Additional resources
</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='resources' %}">
Edit
</a>
{% endif %}
</td>
<td>
{% if resources %}
{% for resource in resources|dictsort:"display_name" %}
{# Maybe make how a resource displays itself a method on the class so templates aren't doing this switching #}
{% if resource.name.type.slug == 'url' or resource.name.type.slug == 'email' %}
<a href="{{ resource.value }}" title="{{ resource.name.name }}">
{% firstof resource.display_name resource.name.name %}</a>{% else %}
<span title="{{ resource.name.name }}">
{% firstof resource.display_name resource.name.name %}: {{ resource.value }}
</span>{% endif %}{% if not forloop.last %}{% if resource.display_name|length < 15 and resource.name.name|length < 15 and resources|length <= 3 %},{% else %}<br>{% endif %}{% endif %}
{% endfor %}
{% endif %}
</td>
</tr>
{% endif %}
{% endwith %}
</tbody>
{% if group.personnel %}
<tbody class="meta border-top">
{% for slug, label, roles in group.personnel %}
<tr>
{% if forloop.first %}
<th>
Personnel
</th>
{% else %}
<td>
</td>
{% endif %}
<th>
{{ label }}
</th>
<td class="edit">
{% if can_edit_group and slug in editable_roles %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field=slug %}">
Edit
</a>
{% endif %}
</td>
<td>
{% for r in roles %}
{% role_person_link r %}{% if not forloop.last %}{% if roles|length > 3%}<br>{% else %},{% endif %}{% endif %}
{% endfor %}
</td>
</tr>
{% endfor %}
</tbody>
{% endif %}
{% if group.list_email %}
<tbody class="meta border-top">
<tr>
<th>
Mailing list
</th>
<th>
Address
</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='list_email' %}">
Edit
</a>
{% endif %}
</td>
<td>
{{ group.list_email|linkify }}
</td>
</tr>
<tr>
<td>
</td>
<th>
To subscribe
</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='list_subscribe' %}">
Edit
</a>
{% endif %}
</td>
<td>
{{ group.list_subscribe|linkify }}
</td>
</tr>
<tr>
<td>
</td>
<th>
Archive
</th>
<td class="edit">
{% if can_edit_group %}
<a class="btn btn-primary btn-sm"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='list_archive' %}">
Edit
</a>
{% endif %}
</td>
<td>
{{ group.list_archive|linkify }}
</td>
</tr>
</tbody>
{% endif %}
{% if group.state_id != "conclude" and group.features.has_default_jabber %}
<tbody class="meta border-top">
<tr>
<th>
Jabber chat
</th>
<th>
Room address
</th>
<td class="edit">
</td>
<td>
<a href="xmpp:{{ group.acronym }}@jabber.ietf.org?join">
xmpp:{{ group.acronym }}@jabber.ietf.org?join
</a>
</td>
</tr>
<tr>
<td>
</td>
<th>
Logs
</th>
<td class="edit">
</td>
<td>
<a href="https://jabber.ietf.org/logs/{{ group.acronym }}/">
https://jabber.ietf.org/logs/{{ group.acronym }}/
</a>
</td>
</tr>
</tbody>
{% endif %}
</table>
{% if requested_close or group.state_id == "conclude" %}
{% if closing_note and closing_note.desc != "(Closing note deleted)" %}
<div class="my-3 alert alert-info">
<h2>
Closing note for {{ group.type.desc.title|default:group.acronym }}
</h2>
{{ closing_note.desc }}
</div>
{% endif %}
{% if user|has_role:"Secretariat" %}
<a class="btn btn-primary mb-3"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='closing_note' %}">
Edit closing note
</a>
{% endif %}
{% endif %}
{% if group.features.has_chartering_process %}
<h2 class="mt-3">
{% if requested_close or group.state_id == "conclude" %}Final{% endif %}
Charter for
{% if group.state_id == "proposed" %}proposed{% endif %}
{{ group.type.desc.title }}
</h2>
{# the linebreaks filter adds <p>, no surrounding <p> necessary: #}
{{ group.charter_text|linkify|urlize_ietf_docs|linebreaks }}
{% else %}
<h2 class="mt-3">
{% if requested_close or group.state_id == "conclude" %}Final{% endif %}
Group description
</h2>
{% comment %}{{ group.description|default:"No description yet."|linebreaks }}{% endcomment %}
{{ group.description|default:"No description yet."| apply_markup:"restructuredtext" }}
{% if can_edit_group %}
<a class="btn btn-primary mb-3"
href="{% url 'ietf.group.views.edit' acronym=group.acronym field='description' %}">
Edit group description
</a>
{% endif %}
{% endif %}
{% if group.features.has_milestones %}
{% include "group/milestones.html" with milestones=group.milestones heading=True %}
{% if milestones_in_review %}
<p>
{{ milestones_in_review|length }} new milestone{{ milestones_in_review|pluralize }}
currently in {{ milestone_reviewer }} review.
</p>
{% endif %}
{% endif %}
{% endblock %}