- Also adds additional tests for the SessionForm
- Fixes a javascript error in session requests for non-WG groups,
that could cause incorrect form behaviour.
- Expands the tests added in [17289] a bit.
- Legacy-Id: 17321
Note: SVN reference [17289] has been migrated to Git commit a227813dc5
145 lines
5.2 KiB
HTML
145 lines
5.2 KiB
HTML
{% extends "base.html" %}
|
|
{# Copyright The IETF Trust 2015, All Rights Reserved #}
|
|
{% load origin %}
|
|
|
|
{% load ietf_filters staticfiles %}
|
|
|
|
{% block pagehead %}
|
|
<link rel="stylesheet" href="{% static "jquery.tablesorter/css/theme.bootstrap.min.css" %}">
|
|
{% endblock %}
|
|
|
|
{% block bodyAttrs %}data-spy="scroll" data-target="#affix"{% endblock %}
|
|
|
|
{% block title %}IETF {{ meeting.number }} timeslot requests{% endblock %}
|
|
|
|
{% block content %}
|
|
{% origin %}
|
|
<div class="row">
|
|
<div class="col-md-10">
|
|
|
|
<h1 class="title">IETF {{ meeting.number }} timeslot requests<br>
|
|
<small>{{meeting.city}}, {{meeting.country}} -- {{meeting.venue_name}}</small>
|
|
</h1>
|
|
|
|
{% regroup sessions by group.parent as area_sessions %}
|
|
{% for area in area_sessions %}
|
|
<h2 class="anchor-target" id="{{area.grouper.acronym}}">
|
|
{{area.grouper.acronym|upper}} <small>{{area.grouper.name}}</small>
|
|
</h2>
|
|
<p class="alert alert-info">
|
|
<b>No timeslot request received for:</b>
|
|
{% for group in groups_not_meeting %}
|
|
{% if group.parent.id == area.grouper.id %}
|
|
{{ group.acronym }}
|
|
{% endif %}
|
|
{% endfor %}
|
|
</p>
|
|
|
|
<table class="table table-condensed table-striped tablesorter">
|
|
<thead>
|
|
<tr>
|
|
<th>Group</th>
|
|
<th>Length</th>
|
|
<th>Size</th>
|
|
<th>Requester</th>
|
|
<th>AD</th>
|
|
<th>Constraints</th>
|
|
<th>Special requests</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for session in area.list %}
|
|
{% ifchanged %}
|
|
</tbody>
|
|
<tbody>
|
|
<tr><th class="warning" colspan="7">{{session.current_status_name|capfirst}}</th></tr>
|
|
</tbody>
|
|
<tbody>
|
|
{% endifchanged %}
|
|
|
|
<tr>
|
|
<th>
|
|
<a href="{% url "ietf.secr.sreq.views.edit" num=meeting.number acronym=session.group.acronym %}">
|
|
{{session.group.acronym}}
|
|
</a>
|
|
{% if session.joint_with_groups.count %}
|
|
joint with {{ session.joint_with_groups_acronyms|join:' ' }}
|
|
{% endif %}
|
|
</th>
|
|
|
|
<td class="text-right">
|
|
{% if session.requested_duration %}
|
|
{{session.requested_duration|stringformat:"s"|slice:"0:4"}}
|
|
{% endif %}
|
|
</td>
|
|
|
|
<td class="text-right">{{session.attendees|default:""}}</td>
|
|
|
|
<td>
|
|
<a href="mailto:{{session.requested_by_person.email_address}}">{{session.requested_by_person}}</a>
|
|
</td>
|
|
|
|
<td>
|
|
{% if session.group.ad_role %}
|
|
<a href="mailto:{{ session.group.ad_role.email.address }}">{{ session.group.ad_role.person }}</a>
|
|
{% endif %}
|
|
</td>
|
|
|
|
<td>
|
|
{% if session.requested_duration %}
|
|
{% regroup session.constraints by name as prioritized_constraints %}
|
|
{% for grouped_constraint in prioritized_constraints %}
|
|
{% if not forloop.first %}
|
|
{% ifchanged grouped_constraint.grouper %}<br>{% endifchanged %}
|
|
{% endif %}
|
|
{% for constraint in grouped_constraint.list %}
|
|
{% with constraint.target.parent.id as constraint_target_parent_id %}
|
|
{% with constraint.source.parent.id as constraint_source_parent_id %}
|
|
{% with constraint.person as constraint_person %}
|
|
{% if constraint_target_parent_id == constraint_source_parent_id and not constraint_person %}
|
|
<b>
|
|
{% endif %}
|
|
{% if constraint.name.slug == "bethere" %}
|
|
{{constraint.brief_display|clean_whitespace}}{% if not forloop.last %}, {% endif %}
|
|
{% else %}
|
|
{% with constraint.name.slug as constraint_name_slug %}
|
|
<span class="{% if constraint_name_slug == "conflict" %}text-danger{% elif constraint_name_slug == "conflic2" %}text-warning{% elif constraint_name_slug == "conflic3" %}text-success{% else %}{{constraint_name_slug}}{% endif %}">
|
|
{% endwith %}
|
|
{{constraint.brief_display}}
|
|
</span>
|
|
{% endif %}
|
|
{% if constraint_target_parent_id == constraint_source_parent_id and not constraint_person %}
|
|
</b>
|
|
{% endif %}
|
|
{% endwith %}
|
|
{% endwith %}
|
|
{% endwith %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
</td>
|
|
|
|
<td>
|
|
{% if session.comments %}{{session.comments|linebreaksbr}}{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
{% endfor %}
|
|
</div>
|
|
<div class="col-md-2 hidden-print bs-docs-sidebar" id="affix">
|
|
<ul class="nav nav-pills nav-stacked small" data-spy="affix">
|
|
{% for area in area_sessions %}
|
|
<li><a href="#{{area.grouper.acronym}}">{{ area.grouper.acronym|upper }}</a></li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
{% endblock %}
|
|
|
|
{% block js %}
|
|
<script src="{% static "jquery.tablesorter/js/jquery.tablesorter.combined.min.js" %}"></script>
|
|
{% endblock %}
|