238 lines
13 KiB
HTML
238 lines
13 KiB
HTML
{# bs5ok #}
|
|
{# Copyright The IETF Trust 2015, All Rights Reserved #}
|
|
{% load origin %}
|
|
{% origin %}
|
|
{% load ietf_filters %}
|
|
{% load textfilters %}
|
|
<div class="row">
|
|
<div class="col-md-2 d-none d-md-block d-sm-block d-lg-block d-xl-block d-xxl-block">
|
|
{% for n, positions in position_groups %}
|
|
<h5>
|
|
<span class="badge {{ n|pos_to_label_format }}">{{ n.name }}</span>
|
|
</h5>
|
|
{% for p in positions %}
|
|
<div class="balloter-name mb-2">
|
|
{% if p.is_old_pos %}
|
|
<span class="text-muted">
|
|
(
|
|
{% endif %}
|
|
{% if p.comment or p.discuss %}<a href="#{{ doc.name|slugify }}_{{ p.balloter.plain_name|slugify }}">{% endif %}
|
|
{{ p.balloter.plain_name }}
|
|
{% if p.comment or p.discuss %}</a>{% endif %}
|
|
{% if p.is_old_pos %}
|
|
)
|
|
</span>
|
|
{% endif %}
|
|
</div>
|
|
{% empty %}
|
|
<span class="text-muted">(None)</span>
|
|
{% endfor %}
|
|
<br>
|
|
{% endfor %}
|
|
</div>
|
|
<div class="col-md-10">
|
|
{% if all_ballots and all_ballots|length > 1 %}
|
|
<ul class="pagination pagination-sm">
|
|
<li class="disabled">
|
|
<span>
|
|
<b>Ballots</b>
|
|
</span>
|
|
</li>
|
|
{% for b in all_ballots %}
|
|
<li {% if b == ballot %}class="active"{% endif %}>
|
|
<a href="{% url "ietf.doc.views_doc.document_ballot" name=doc.name ballot_id=b.pk %}">
|
|
{{ b.ballot_type.name }} ({{ b.rev }})
|
|
</a>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
{% if doc.type_id == "draft" or doc.type_id == "conflrev" or doc.type_id == "statchg" %}
|
|
{% if deferred %}
|
|
<p class="alert alert-danger my-3">
|
|
Ballot deferred by {{ deferred.by }} on {{ deferred.time|date:"Y-m-d" }}.
|
|
</p>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if not ballot_open %}
|
|
<p class="alert alert-warning my-3">
|
|
<b>Note:</b> This ballot was opened for revision {{ ballot.rev }} and is now closed.
|
|
</p>
|
|
{% else %}
|
|
<p class="alert alert-info my-3">
|
|
<b>Summary:</b> {{ summary }}
|
|
</p>
|
|
{% endif %}
|
|
{% if ballot.ballot_type.question %}
|
|
<p class="alert alert-secondary my-3">
|
|
<b>Ballot question:</b> "{{ ballot.ballot_type.question }}"
|
|
</p>
|
|
{% endif %}
|
|
{% if editable and user|has_role:"Area Director,Secretariat,IRSG Member" %}
|
|
<a class="btn btn-primary my-3"
|
|
href="https://mailarchive.ietf.org/arch/search/?q=subject:{{ doc.name }}+AND+subject:(discuss+OR+comment+OR+review)">
|
|
Search Mailarchive
|
|
</a>
|
|
{% if user|can_ballot:doc %}
|
|
<a class="btn btn-primary"
|
|
href="{% url "ietf.doc.views_ballot.edit_position" name=doc.name ballot_id=ballot.pk %}">
|
|
Edit position
|
|
</a>
|
|
{% endif %}
|
|
{% if doc.type_id == "draft" or doc.type_id == "conflrev" or doc.type_id == "statchg" %}
|
|
{% if deferred %}
|
|
<a class="btn btn-warning"
|
|
href="{% url 'ietf.doc.views_ballot.undefer_ballot' name=doc.name %}">Undefer ballot</a>
|
|
{% else %}
|
|
{% if doc.telechat_date %}
|
|
<a class="btn btn-warning"
|
|
href="{% url 'ietf.doc.views_ballot.defer_ballot' name=doc.name %}">Defer ballot</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if user|has_role:"Area Director,Secretariat" and ballot.ballot_type.slug != "irsg-approve" %}
|
|
<a class="btn btn-danger"
|
|
href="{% url 'ietf.doc.views_ballot.clear_ballot' name=doc.name ballot_type_slug=ballot.ballot_type.slug %}">
|
|
Clear ballot
|
|
</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% for n, positions in position_groups %}
|
|
{% for p in positions %}
|
|
{% if not p.is_old_pos %}
|
|
<h5 class="mt-4"
|
|
id="{{ doc.name|slugify }}_{{ p.balloter.plain_name|slugify }}">
|
|
{{ p.balloter.plain_name }}
|
|
<span class="float-end">
|
|
{% if p.old_positions %}<span class="text-muted small">(was {{ p.old_positions|join:", " }})</span>{% endif %}
|
|
<span class="badge {{ p.pos|pos_to_label_format }}">{{ p.pos }}</span>
|
|
{% if user|has_role:"Secretariat" %}
|
|
<a href="{% url "ietf.doc.views_ballot.edit_position" name=doc.name ballot_id=ballot.pk %}?balloter={{ p.balloter.pk }}"
|
|
title="Click to edit the position of {{ p.balloter.plain_name }}"
|
|
class="btn btn-primary btn-sm">
|
|
Edit
|
|
</a>
|
|
{% endif %}
|
|
</span>
|
|
</h5>
|
|
{% if p.pos.blocking and p.discuss %}
|
|
<div class="card border-danger {% if p.comment %} mb-2{% endif %}">
|
|
<div class="card-header bg-danger text-light">
|
|
<div>
|
|
<b>{{ p.pos.name }}</b> ({{ p.discuss_time|date:"Y-m-d" }}
|
|
{% if not p.for_current_revision %}for -{{ p.get_dochistory.rev }}{% endif %}
|
|
)
|
|
{% if p.send_email %}
|
|
<i class="bi bi-envelope float-end"
|
|
title="Email requested to be sent for this discuss"></i>
|
|
{% elif p.any_email_sent == True %}
|
|
<i class="bi bi-envelope float-end"
|
|
title="Email requested to be sent for earlier discuss"></i>
|
|
{% elif p.any_email_sent == False %}
|
|
<i class="bi bi-chat-o float-end"
|
|
title="No email send requests for this discuss"></i>
|
|
{% else %}
|
|
<i class="bi bi-chat-o float-end"
|
|
title="No email send requests for this discuss"></i>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<pre class="ballot pasted">{{ p.discuss|linkify|urlize_ietf_docs }}</pre>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% if p.comment %}
|
|
<div class="card {{ p.pos|pos_to_border_format }}">
|
|
<div class="card-header {{ p.pos|pos_to_label_format }}">
|
|
<div>
|
|
<b>Comment</b> ({{ p.comment_time|date:"Y-m-d" }}
|
|
{% if not p.for_current_revision %}for -{{ p.get_dochistory.rev }}{% endif %}
|
|
)
|
|
{% if p.send_email %}
|
|
<i class="bi bi-envelope-check float-end"
|
|
title="Email requested to be sent for this comment"></i>
|
|
{% elif p.any_email_sent == True %}
|
|
<i class="bi bi-envelope-plus float-end"
|
|
title="Email requested to be sent for earlier comment"></i>
|
|
{% elif p.any_email_sent == False %}
|
|
<i class="bi bi-envelope-dash float-end"
|
|
title="No email send requests for this comment"></i>
|
|
{% else %}
|
|
<i class="bi bi-envelope-exclamation float-end"
|
|
title="No ballot position send log available"></i>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
<pre class="ballot pasted">{{ p.comment|linkify|urlize_ietf_docs }}</pre>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
{% for n, positions in position_groups %}
|
|
{% for p in positions %}
|
|
{% if p.is_old_pos %}
|
|
<h5 id="{{ doc.name|slugify }}_{{ p.balloter.plain_name|slugify }}">
|
|
<span class="text-muted">({{ p.balloter.plain_name }}; former steering group member)</span>
|
|
<span class="float-end">
|
|
{% if p.old_positions %}<span class="text-muted small">(was {{ p.old_positions|join:", " }})</span>{% endif %}
|
|
<span class="badge {{ p.pos|pos_to_label_format }}">{{ p.pos }}</span>
|
|
{% if user|has_role:"Secretariat" %}
|
|
<a href="{% url "ietf.doc.views_ballot.edit_position" name=doc.name ballot_id=ballot.pk %}?balloter={{ p.balloter.pk }}"
|
|
title="Click to edit the position of {{ p.balloter.plain_name }}"
|
|
class="btn btn-primary btn-sm">
|
|
Edit
|
|
</a>
|
|
{% endif %}
|
|
</span>
|
|
</h5>
|
|
<div class="card {{ p.pos|pos_to_border_format }}">
|
|
<div class="card-header {{ p.pos|pos_to_label_format }}">
|
|
<div>
|
|
<b>{{ p.pos.name }} </b>
|
|
{% if p.pos.blocking and p.discuss %}
|
|
<b>[Treat as non-blocking comment]</b> ({{ p.discuss_time|date:"Y-m-d" }}
|
|
{% if not p.for_current_revision %}for -{{ p.get_dochistory.rev }}{% endif %}
|
|
)
|
|
{% else %}
|
|
({{ p.comment_time|date:"Y-m-d" }}
|
|
{% if not p.for_current_revision %}for -{{ p.get_dochistory.rev }}{% endif %}
|
|
)
|
|
{% endif %}
|
|
{% if p.send_email %}
|
|
<i class="bi bi-envelope float-end"
|
|
title="Email requested to be sent for this ballot position"></i>
|
|
{% elif p.any_email_sent == True %}
|
|
<i class="bi bi-envelope float-end"
|
|
title="Email requested to be sent for earlier ballot position"></i>
|
|
{% elif p.any_email_sent == False %}
|
|
<i class="bi bi-chat-o float-end"
|
|
title="No email send requests for this ballot position"></i>
|
|
{% else %}
|
|
<div class="float-end small italic"
|
|
title="No ballot position send log available">
|
|
No email
|
|
<br>
|
|
send info
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% if p.pos.blocking and p.discuss %}
|
|
<div class="card-body">
|
|
<pre class="ballot pasted">{{ p.discuss|linkify|urlize_ietf_docs }}</pre>
|
|
</div>
|
|
{% else %}
|
|
<div class="card-body">
|
|
<pre class="ballot pasted">{{ p.comment|linkify|urlize_ietf_docs }}</pre>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</div>
|
|
</div> |