datatracker/ietf/templates/meeting/requests.html
Sasha Romijn 825a054d19 Add support for structured entry and storage of joint sessions in meetings.
- 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
2020-02-21 13:27:11 +00:00

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 %}