fix: More fixes for narrow screens (#3662)
* fix: More fixes for narrow screens Need to keep checking for issues, there are more. * Make columns more narrow on narrow screens * More fixes * More fixes * Test fixes * Fix more tests * Close tbody
This commit is contained in:
parent
66feccbc67
commit
870fed030f
|
@ -562,7 +562,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
if settings.USER_PREFERENCE_DEFAULTS['full_draft'] == 'off':
|
||||
self.assertContains(r, "Show full document text")
|
||||
self.assertContains(r, "Show full document")
|
||||
self.assertNotContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -579,7 +579,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)) + "?include_text=0")
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
self.assertContains(r, "Show full document text")
|
||||
self.assertContains(r, "Show full document")
|
||||
self.assertNotContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -596,7 +596,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)) + "?include_text=foo")
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
self.assertNotContains(r, "Show full document text")
|
||||
self.assertNotContains(r, "Show full document")
|
||||
self.assertContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -613,7 +613,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)) + "?include_text=1")
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
self.assertNotContains(r, "Show full document text")
|
||||
self.assertNotContains(r, "Show full document")
|
||||
self.assertContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -631,7 +631,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
self.assertNotContains(r, "Show full document text")
|
||||
self.assertNotContains(r, "Show full document")
|
||||
self.assertContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -649,7 +649,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
r = self.client.get(urlreverse("ietf.doc.views_doc.document_main", kwargs=dict(name=draft.name)))
|
||||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
self.assertContains(r, "Show full document text")
|
||||
self.assertContains(r, "Show full document")
|
||||
self.assertNotContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -668,7 +668,7 @@ Man Expires September 22, 2015 [Page 3]
|
|||
self.assertEqual(r.status_code, 200)
|
||||
self.assertContains(r, "Active Internet-Draft")
|
||||
if settings.USER_PREFERENCE_DEFAULTS['full_draft'] == 'off':
|
||||
self.assertContains(r, "Show full document text")
|
||||
self.assertContains(r, "Show full document")
|
||||
self.assertNotContains(r, "Deimos street")
|
||||
self.assertContains(r, replaced.canonical_name())
|
||||
self.assertContains(r, replaced.title)
|
||||
|
@ -2807,4 +2807,4 @@ class PdfizedTests(TestCase):
|
|||
self.should_succeed(dict(name=rfc.name,rev=f'{r:02d}'))
|
||||
for ext in ('pdf','txt','html','anythingatall'):
|
||||
self.should_succeed(dict(name=rfc.name,rev=f'{r:02d}',ext=ext))
|
||||
self.should_404(dict(name=rfc.name,rev='02'))
|
||||
self.should_404(dict(name=rfc.name,rev='02'))
|
|
@ -360,9 +360,9 @@ def document_main(request, name, rev=None):
|
|||
if can_adopt_draft(request.user, doc) and not doc.get_state_slug() in ["rfc"] and not snapshot:
|
||||
if doc.group and doc.group.acronym != 'none': # individual submission
|
||||
# already adopted in one group
|
||||
button_text = "Change Document Adoption to other Group (now in %s)" % doc.group.acronym
|
||||
button_text = "Switch adoption"
|
||||
else:
|
||||
button_text = "Manage Document Adoption in Group"
|
||||
button_text = "Adopt"
|
||||
actions.append((button_text, urlreverse('ietf.doc.views_draft.adopt_draft', kwargs=dict(name=doc.name))))
|
||||
|
||||
if can_unadopt_draft(request.user, doc) and not doc.get_state_slug() in ["rfc"] and not snapshot:
|
||||
|
|
|
@ -2320,7 +2320,7 @@ class InterimTests(IetfSeleniumTestCase):
|
|||
end = ts.utc_end_time().astimezone(zone).strftime('%H:%M')
|
||||
meeting_link = self.driver.find_element(By.LINK_TEXT, session.meeting.number)
|
||||
time_td = meeting_link.find_element(By.XPATH, '../../td[contains(@class, "session-time")]')
|
||||
self.assertIn('%s - %s' % (start, end), time_td.text)
|
||||
self.assertIn('%s-%s' % (start, end), time_td.text)
|
||||
|
||||
def _assert_ietf_tz_correct(meetings, tz):
|
||||
zone = pytz.timezone(tz)
|
||||
|
@ -2339,7 +2339,7 @@ class InterimTests(IetfSeleniumTestCase):
|
|||
end = end_dt.astimezone(zone).strftime('%Y-%m-%d')
|
||||
meeting_link = self.driver.find_element(By.LINK_TEXT, "IETF " + meeting.number)
|
||||
time_td = meeting_link.find_element(By.XPATH, '../../td[contains(@class, "meeting-time")]')
|
||||
self.assertIn('%s - %s' % (start, end), time_td.text)
|
||||
self.assertIn('%s to %s' % (start, end), time_td.text)
|
||||
|
||||
sessions = [m.session_set.first() for m in self.displayed_interims()]
|
||||
self.assertGreater(len(sessions), 0)
|
||||
|
|
|
@ -4307,7 +4307,7 @@ class InterimTests(TestCase):
|
|||
q = PyQuery(r.content)
|
||||
#id="-%s" % interim.group.acronym
|
||||
#self.assertIn('Cancelled', q('[id*="'+id+'"]').text())
|
||||
self.assertIn('Cancelled', q('tr>td>a>span').text())
|
||||
self.assertIn('Cancelled', q('tr>td>a+span').text())
|
||||
|
||||
def do_upcoming_test(self, querystring=None, create_meeting=True):
|
||||
if create_meeting:
|
||||
|
|
|
@ -92,13 +92,26 @@ table tbody.meta {
|
|||
|
||||
th:first-child,
|
||||
td:first-child {
|
||||
width: 9em;
|
||||
width: 4em;
|
||||
}
|
||||
|
||||
th:nth-child(2),
|
||||
td:nth-child(2) {
|
||||
// text-align: right;
|
||||
width: 14em;
|
||||
width: 7em;
|
||||
}
|
||||
|
||||
// See https://getbootstrap.com/docs/5.0/layout/breakpoints/#media-queries
|
||||
@include media-breakpoint-up(md) {
|
||||
|
||||
th:first-child,
|
||||
td:first-child {
|
||||
width: 9em;
|
||||
}
|
||||
|
||||
th:nth-child(2),
|
||||
td:nth-child(2) {
|
||||
width: 14em;
|
||||
}
|
||||
}
|
||||
|
||||
td.edit {
|
||||
|
|
|
@ -126,20 +126,20 @@ function format_tooltip_table(start, end) {
|
|||
var current_timezone = get_current_tz_cb();
|
||||
var out = '<div class="text-start"><table class="table table-sm"><tr><th></th><th>Session start</th><th>Session end</th></tr>';
|
||||
if (window.meeting_timezone !== "") {
|
||||
out += '<tr><th class="timehead">Meeting timezone</th><td class="text-nowrap">' +
|
||||
format_time(start, window.meeting_timezone, 0) + '</td><td class="text-nowrap">' +
|
||||
out += '<tr><th class="timehead">Meeting timezone</th><td>' +
|
||||
format_time(start, window.meeting_timezone, 0) + '</td><td>' +
|
||||
format_time(end, window.meeting_timezone, 0) + '</td></tr>';
|
||||
}
|
||||
out += '<tr><th class="timehead">Local timezone</th><td class="text-nowrap">' +
|
||||
format_time(start, local_timezone, 0) + '</td><td class="text-nowrap">' +
|
||||
out += '<tr><th class="timehead">Local timezone</th><td>' +
|
||||
format_time(start, local_timezone, 0) + '</td><td>' +
|
||||
format_time(end, local_timezone, 0) + '</td></tr>';
|
||||
if (current_timezone !== 'UTC') {
|
||||
out += '<tr><th class="timehead">Selected Timezone</th><td class="text-nowrap">' +
|
||||
format_time(start, current_timezone, 0) + '</td><td class="text-nowrap">' +
|
||||
out += '<tr><th class="timehead">Selected Timezone</th><td>' +
|
||||
format_time(start, current_timezone, 0) + '</td><td>' +
|
||||
format_time(end, current_timezone, 0) + '</td></tr>';
|
||||
}
|
||||
out += '<tr><th class="timehead">UTC</th><td class="text-nowrap">' +
|
||||
format_time(start, 'UTC', 0) + '</td><td class="text-nowrap">' +
|
||||
out += '<tr><th class="timehead">UTC</th><td>' +
|
||||
format_time(start, 'UTC', 0) + '</td><td>' +
|
||||
format_time(end, 'UTC', 0) + '</td></tr>';
|
||||
out += '</table>' + format_tooltip_notice(start, end) + '</div>';
|
||||
return out;
|
||||
|
|
|
@ -46,6 +46,49 @@ $(document)
|
|||
.tooltip();
|
||||
});
|
||||
|
||||
// Help browser to wrap long link texts (esp. email addresses) more sensibly.
|
||||
$(document)
|
||||
.ready(function () {
|
||||
$("#content a")
|
||||
.each(function () {
|
||||
// get the text of the <a> element
|
||||
var text = $(this)
|
||||
.text();
|
||||
// insert some <wbr> at strategic places
|
||||
var newtext = text.replace(/([@._])/g, "$1<wbr>");
|
||||
if (newtext === text) {
|
||||
return;
|
||||
}
|
||||
// now replace only that text inside the element's HTML
|
||||
var newhtml = $(this)
|
||||
.html()
|
||||
.replace(text, newtext);
|
||||
$(this)
|
||||
.html(newhtml);
|
||||
});
|
||||
|
||||
// $("#content table.tablesorter")
|
||||
// .on("tablesorter:done", function () {
|
||||
// $("#content table.tablesorter .date")
|
||||
// .each(function () {
|
||||
// // get the text of the <a> element
|
||||
// var text = $(this)
|
||||
// .text();
|
||||
// // insert some <wbr> at strategic places
|
||||
// var newtext = text.replace(/([-])/g, "$1<wbr>");
|
||||
// if (newtext === text) {
|
||||
// return;
|
||||
// }
|
||||
// // now replace only that text inside the element's HTML
|
||||
// var newhtml = $(this)
|
||||
// .html()
|
||||
// .replace(text, newtext);
|
||||
// $(this)
|
||||
// .html(newhtml);
|
||||
// });
|
||||
// });
|
||||
});
|
||||
|
||||
$(document)
|
||||
.ready(function () {
|
||||
|
||||
|
|
|
@ -273,5 +273,7 @@ $(document)
|
|||
});
|
||||
$(table.addClass("tablesorter-done"));
|
||||
n++;
|
||||
$(table)[0]
|
||||
.dispatchEvent(new Event("tablesorter:done"));
|
||||
});
|
||||
});
|
|
@ -122,7 +122,7 @@ function format_session_time(session_elt, tz) {
|
|||
.attr('data-start-utc'));
|
||||
var end = moment.utc($(session_elt)
|
||||
.attr('data-end-utc'));
|
||||
return format_moment(start, tz, 'datetime') + ' - ' + format_moment(end, tz, 'time');
|
||||
return format_moment(start, tz, 'datetime') + '-' + format_moment(end, tz, 'time');
|
||||
}
|
||||
|
||||
function format_meeting_time(meeting_elt, tz) {
|
||||
|
@ -134,7 +134,7 @@ function format_meeting_time(meeting_elt, tz) {
|
|||
var end = moment.tz($(meeting_elt)
|
||||
.attr('data-end-date'), meeting_tz)
|
||||
.endOf('day');
|
||||
return format_moment(start, tz, 'date') + ' - ' + format_moment(end, tz, 'date');
|
||||
return format_moment(start, tz, 'date') + ' to ' + format_moment(end, tz, 'date');
|
||||
}
|
||||
|
||||
window.timezone_changed = function (newtz) {
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<th data-sort="name">Name</th>
|
||||
<th data-sort="date">Date</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="date">Date</th>
|
||||
<th data-sort="title">Title</th>
|
||||
<th data-sort="responsible">Responsible</th>
|
||||
<th data-sort="editors">Editors</th>
|
||||
|
@ -44,7 +44,7 @@
|
|||
<td>
|
||||
<a href="{% url 'ietf.doc.views_doc.document_main' name=req.name %}">{{ req.name }}-{{ req.rev }}</a>
|
||||
</td>
|
||||
<td>{{ req.latest_revision_event.time|date:"Y-m-d" }}</td>
|
||||
<td class="d-none d-sm-table-cell">{{ req.latest_revision_event.time|date:"Y-m-d" }}</td>
|
||||
<td>{{ req.title }}</td>
|
||||
<td>
|
||||
{% for person in req.responsible %}
|
||||
|
|
|
@ -1152,7 +1152,7 @@
|
|||
<a class="btn btn-primary my-3" href="?include_text=1">
|
||||
<i class="bi bi-caret-down">
|
||||
</i>
|
||||
Show full document text
|
||||
Show full document
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
|
|
|
@ -120,7 +120,7 @@
|
|||
<tbody>
|
||||
{% for e in events %}
|
||||
<tr id="history-{{ e.pk }}">
|
||||
<td class="text-nowrap">
|
||||
<td>
|
||||
<div title="{{ e.time|date:'Y-m-d H:i:s O' }}">{{ e.time|date:"Y-m-d" }}</div>
|
||||
</td>
|
||||
<td class="text-end">{{ e.rev }}</td>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<tr>
|
||||
<th data-sort="document">Document</th>
|
||||
<th data-sort="status">Status</th>
|
||||
<th data-sort="responsible">Responsible AD</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="responsible">Responsible AD</th>
|
||||
<th data-sort="discusses">Discusses</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -25,7 +25,7 @@
|
|||
<tr>
|
||||
<td>{{ doc.displayname_with_link }}</td>
|
||||
{% include "doc/search/status_columns.html" %}
|
||||
<td>
|
||||
<td class="d-none d-sm-table-cell">
|
||||
{% if doc.ad %}
|
||||
{% person_link doc.ad %}
|
||||
{% else %}
|
||||
|
@ -40,11 +40,8 @@
|
|||
{% else %}
|
||||
{% person_link p.balloter %}
|
||||
{% endif %}
|
||||
(
|
||||
{% if p.discuss_time %}{{ p.discuss_time|timesince_days }}{% endif %}
|
||||
days ago
|
||||
{% if doc.get_state_url != "rfc" and p.rev != doc.rev %}for -{{ p.rev }}{% endif %}
|
||||
)
|
||||
({% if p.discuss_time %}{{ p.discuss_time|timesince_days }}{% endif %}
|
||||
days ago{% if doc.get_state_url != "rfc" and p.rev != doc.rev %} for -{{ p.rev }}{% endif %})
|
||||
<br>
|
||||
</span>
|
||||
{% endfor %}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
{% cycle '' 'table-active' as alternator silent %}
|
||||
{% for item in alias.list %}
|
||||
<tr {% if alternator %}class="{{ alternator }}"{% endif %}>
|
||||
<td class="text-nowrap">{{ alias.grouper }}{{ item.alias_type|default:'' }}@{{ ietf_domain }}</td>
|
||||
<td>{{ alias.grouper }}{{ item.alias_type|default:'' }}@{{ ietf_domain }}</td>
|
||||
<td>{{ item.expansion }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
{% endfor %}
|
||||
</td>
|
||||
<td class="doc">
|
||||
{% if doc.pages %}<small class="float-end text-muted">{{ doc.pages }} page{{ doc.pages|pluralize }}</small>{% endif %}
|
||||
{% if doc.pages %}<small class="float-end text-muted d-none d-sm-block">{{ doc.pages }} page{{ doc.pages|pluralize }}</small>{% endif %}
|
||||
<div>
|
||||
<a href="{{ doc.get_absolute_url }}">
|
||||
{% if doc.get_state_slug == "rfc" %}
|
||||
|
@ -106,7 +106,6 @@
|
|||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<span class="text-nowrap">
|
||||
{% if doc.latest_revision_date|timesince_days|new_enough:request and doc.get_state_slug != "rfc" %}
|
||||
{% if doc.rev != "00" %}
|
||||
<a href="{{ rfcdiff_base_url }}?url2={{ doc.name }}-{{ doc.rev }}">
|
||||
|
@ -122,7 +121,6 @@
|
|||
{% if doc.latest_revision_date|timesince_days|new_enough:request and doc.get_state_slug != "rfc" %}
|
||||
{% if doc.rev != "00" or doc.replaces %}</a>{% endif %}
|
||||
{% endif %}
|
||||
</span>
|
||||
{% if doc.latest_revision_date|timesince_days|new_enough:request %}
|
||||
<br>
|
||||
<div class="float-end">
|
||||
|
@ -135,7 +133,7 @@
|
|||
{% endif %}
|
||||
</td>
|
||||
{% include "doc/search/status_columns.html" %}
|
||||
<td class="text-center">
|
||||
<td class="text-center d-none d-sm-table-cell">
|
||||
{% if doc.related_ipr %}
|
||||
<a href="{% url "ietf.ipr.views.search" %}?submit=draft&id={{ doc.name }}">
|
||||
<span class="badge bg-info">{{ doc.related_ipr|length }}</span>
|
||||
|
@ -143,7 +141,7 @@
|
|||
{% endif %}
|
||||
</td>
|
||||
{% if ad_name == None or ad_name != doc.ad.plain_name %}
|
||||
<td>
|
||||
<td class="d-none d-sm-table-cell">
|
||||
{% if doc.ad %}
|
||||
{% person_link doc.ad title="Area Director" %}
|
||||
{% endif %}
|
||||
|
|
|
@ -17,7 +17,10 @@
|
|||
<th></th>
|
||||
{% for h in meta.headers %}
|
||||
{% if h.title != "Title" %}
|
||||
<th data-sort="{{ h.key }}">
|
||||
<th data-sort="{{ h.key }}"
|
||||
{% if h.title|slugify == "ipr" or h.title|slugify == "ad-shepherd" %}
|
||||
class="d-none d-sm-table-cell"
|
||||
{% endif %}>
|
||||
{% if "sort_url" in h %}
|
||||
<a href="{{ h.sort_url }}">
|
||||
{{ h.title|cut:" " }}
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
<br>
|
||||
Action Holder{{ doc.documentactionholder_set.all|pluralize }}:
|
||||
{% for action_holder in doc.documentactionholder_set.all %}
|
||||
{% person_link action_holder.person title=action_holder.role_for_doc %} {{ action_holder|action_holder_badge }}{% if not forloop.last %},{% endif %}
|
||||
{% person_link action_holder.person title=action_holder.role_for_doc %}{% if action_holder|action_holder_badge %} {{ action_holder|action_holder_badge }}{% endif %}{% if not forloop.last %},{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
|
|
|
@ -16,18 +16,18 @@
|
|||
<table class="table table-sm table-borderless">
|
||||
<tbody>
|
||||
<tr {% if warn.intended_std_level %}class="table-warning"{% endif %}>
|
||||
<th class="text-nowrap">Intended status level</th>
|
||||
<th>Intended status level</th>
|
||||
<td {% if warn.intended_std_level %}class="text-danger"{% endif %}>
|
||||
{% if warn.intended_std_level %}<i class="bi bi-exclamation-circle"></i>{% endif %}
|
||||
{{ doc.intended_std_level }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">Responsible AD</th>
|
||||
<th>Responsible AD</th>
|
||||
<td>{% person_link ad %}</td>
|
||||
</tr>
|
||||
<tr {% if warn.shepherd %}class="table-warning"{% endif %}>
|
||||
<th class="text-nowrap">Document shepherd</th>
|
||||
<th>Document shepherd</th>
|
||||
<td {% if warn.shepherd %}class="text-danger"{% endif %}>
|
||||
{% if warn.shepherd %}<i class="bi bi-exclamation-circle"></i>{% endif %}
|
||||
{% if doc.shepherd %}
|
||||
|
@ -38,7 +38,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr {% if warn.shepherd_writeup %}class="table-warning"{% endif %}>
|
||||
<th class="text-nowrap">Shepherd write-up exists</th>
|
||||
<th>Shepherd write-up exists</th>
|
||||
<td {% if warn.shepherd_writeup %}class="text-danger"{% endif %}>
|
||||
{% if warn.shepherd_writeup %}<i class="bi bi-exclamation-circle"></i>{% endif %}
|
||||
{% if shepherd_writeup %}
|
||||
|
@ -49,7 +49,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">Also notify</th>
|
||||
<th>Also notify</th>
|
||||
<td>
|
||||
{% if notify %}
|
||||
{{ notify }}
|
||||
|
@ -59,7 +59,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr {% if warn.tags %}class="table-warning"{% endif %}>
|
||||
<th class="text-nowrap">Annotation tags</th>
|
||||
<th>Annotation tags</th>
|
||||
<td {% if warn.tags %}class="text-danger"{% endif %}>
|
||||
{% if warn.tags %}<i class="bi bi-exclamation-circle"></i>{% endif %}
|
||||
{% if not tags %}
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
<td>
|
||||
<a href="{% url "ietf.doc.views_doc.document_main" name=g.charter.name %}">{{ g.name }}</a>
|
||||
</td>
|
||||
<td class="text-nowrap">{{ g.charter.time|date:"Y-m-d" }}</td>
|
||||
<td>{{ g.charter.time|date:"Y-m-d" }}</td>
|
||||
<td>
|
||||
<div class="float-end">{% ballot_icon g.charter %}</div>
|
||||
{{ g.charter.get_state.name }}
|
||||
|
|
|
@ -28,8 +28,8 @@
|
|||
<tbody>
|
||||
{% for e in events %}
|
||||
<tr>
|
||||
<td class="text-nowrap">{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td class="text-nowrap">{% person_link e.by %}</td>
|
||||
<td>{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td>{% person_link e.by %}</td>
|
||||
<td>{{ e.desc|format_history_text }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<tbody>
|
||||
{% for stream in streams %}
|
||||
<tr>
|
||||
<td class="text-nowrap">
|
||||
<td>
|
||||
<a href="/stream/{{ stream.acronym }}/">{{ stream.acronym }}</a>
|
||||
</td>
|
||||
<td>{{ stream.name }}</td>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<div class="position-absolute top-0 end-0 m-3">{% ballot_icon doc %}</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">{{ doc.group.type }} name</div>
|
||||
<div class="col-3 text-end fw-bold">{{ doc.group.type }} name</div>
|
||||
<div class="col">
|
||||
<b>{{ doc.group.name }}
|
||||
<a href="{{ doc.group.about_url }}">({{ doc.group.acronym|upper }})</a>
|
||||
|
@ -15,7 +15,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Charter</div>
|
||||
<div class="col-3 text-end fw-bold">Charter</div>
|
||||
<div class="col">
|
||||
<a href="{{ doc.get_href }}">
|
||||
<i class="bi bi-file-earmark-fill"></i>
|
||||
|
@ -24,7 +24,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Area</div>
|
||||
<div class="col-3 text-end fw-bold">Area</div>
|
||||
<div class="col">
|
||||
<a href="{% url 'ietf.group.views.active_groups' group_type='wg' %}#{{ doc.group.parent.acronym }}">
|
||||
{{ doc.group.parent.acronym|upper }}</a>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<div class="card-body">
|
||||
{% with doc.conflictdoc as conflictdoc %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Conflict review</div>
|
||||
<div class="col-3 text-end fw-bold">Conflict review</div>
|
||||
<div class="col">
|
||||
<div class="fw-bold">{{ doc.title }}</div>
|
||||
<a href="{{ doc.get_href }}">
|
||||
|
@ -17,7 +17,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">{{ conflictdoc.stream }} {{ conflictdoc.intended_std_level }}</div>
|
||||
<div class="col-3 text-end fw-bold">{{ conflictdoc.stream }} {{ conflictdoc.intended_std_level }}</div>
|
||||
<div class="col">
|
||||
<div class="fw-bold">{{ conflictdoc.title }}</div>
|
||||
<a href="{{ settings.IETF_ID_ARCHIVE_URL }}{{ conflictdoc.name }}-{{ conflictdoc.rev }}.txt">
|
||||
|
@ -28,25 +28,25 @@
|
|||
</div>
|
||||
{% if conflictdoc.note %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Note</div>
|
||||
<div class="col-3 text-end fw-bold">Note</div>
|
||||
<div class="col">{{ conflictdoc.note|linebreaksbr }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Token</div>
|
||||
<div class="col-3 text-end fw-bold">Token</div>
|
||||
<div class="col">{% person_link doc.ad %}</div>
|
||||
</div>
|
||||
{% with doc.active_defer_event as defer %}
|
||||
{% if defer %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Deferred by</div>
|
||||
<div class="col-3 text-end fw-bold">Deferred by</div>
|
||||
<div class="col">{{ defer.by }} on {{ defer.time|date:"Y-m-d" }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endwith %}
|
||||
{% if conflictdoc.ipr %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">IPR</div>
|
||||
<div class="col-3 text-end fw-bold">IPR</div>
|
||||
<div class="col">
|
||||
{% for ipr in conflictdoc.ipr %}
|
||||
{% if ipr.disclosure.state_id == "posted" %}
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
<div class="position-absolute top-0 end-0 m-3">{% ballot_icon doc %}</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">{{ doc.intended_std_level }}</div>
|
||||
<div class="col-3 text-end fw-bold">{{ doc.intended_std_level }}</div>
|
||||
<div class="col">
|
||||
<b>{{ doc.title }}</b>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">
|
||||
<div class="col-3 text-end fw-bold">
|
||||
{% if doc.stream %}{{ doc.stream }} stream{% endif %}
|
||||
</div>
|
||||
<div class="col">
|
||||
|
@ -31,12 +31,12 @@
|
|||
</div>
|
||||
{% if doc.note %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Note</div>
|
||||
<div class="col-3 text-end fw-bold">Note</div>
|
||||
<div class="col">{{ doc.note|urlize_ietf_docs|linkify|linebreaksbr }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Token</div>
|
||||
<div class="col-3 text-end fw-bold">Token</div>
|
||||
<div class="col">
|
||||
{% person_link doc.ad %}
|
||||
<a href="{% url 'ietf.group.views.active_groups' group_type='wg' %}#{{ doc.group.parent.acronym }}">
|
||||
|
@ -47,14 +47,14 @@
|
|||
{% with doc.active_defer_event as defer %}
|
||||
{% if defer %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Deferred by</div>
|
||||
<div class="col-3 text-end fw-bold">Deferred by</div>
|
||||
<div class="col">{{ defer.by }} on {{ defer.time|date:"Y-m-d" }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endwith %}
|
||||
{% if doc.iana_review_state %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">IANA review</div>
|
||||
<div class="col-3 text-end fw-bold">IANA review</div>
|
||||
<div class="col {% if doc.iana_review_state|slice:7 != "IANA OK" %}text-danger{% else %}text-success{% endif %}">
|
||||
{{ doc.iana_review_state }}
|
||||
</div>
|
||||
|
@ -62,13 +62,13 @@
|
|||
{% endif %}
|
||||
{% if doc.consensus %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Consensus</div>
|
||||
<div class="col-3 text-end fw-bold">Consensus</div>
|
||||
<div class="col {% if doc.consensus != "Yes" %}text-danger{% else %}text-success{% endif %}">{{ doc.consensus }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if doc.review_assignments %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Reviews</div>
|
||||
<div class="col-3 text-end fw-bold">Reviews</div>
|
||||
<div class="col">
|
||||
{% for review_assignment in doc.review_assignments %}
|
||||
{% include "doc/review_assignment_summary.html" with current_doc_name=doc.name current_rev=doc.rev %}
|
||||
|
@ -78,13 +78,13 @@
|
|||
{% endif %}
|
||||
{% if doc.lastcall_expires %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">Last call expires</div>
|
||||
<div class="col-3 text-end fw-bold">Last call expires</div>
|
||||
<div class="col">{{ doc.lastcall_expires|date:"Y-m-d" }}</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if doc.ipr %}
|
||||
<div class="row">
|
||||
<div class="col-sm-3 text-end fw-bold">IPR</div>
|
||||
<div class="col-3 text-end fw-bold">IPR</div>
|
||||
<div class="col">
|
||||
{% for ipr in doc.ipr %}
|
||||
{% if ipr.disclosure.state_id == "posted" %}
|
||||
|
|
|
@ -49,8 +49,8 @@
|
|||
<th data-sort="document">Document</th>
|
||||
<th data-sort="date">Date</th>
|
||||
<th data-sort="status">Status</th>
|
||||
<th data-sort="ipr">IPR</th>
|
||||
<th data-sort="ad">AD/Shepherd</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="ipr">IPR</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="ad">AD/Shepherd</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
<tr>
|
||||
<th data-sort="document">Document</th>
|
||||
<th data-sort="status">Status</th>
|
||||
<th data-sort="ad" class="text-nowrap">Responsible AD</th>
|
||||
<th data-sort="ad" class="d-none d-sm-table-cell">Responsible AD</th>
|
||||
<th data-sort="discusses">Discusses</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -57,13 +57,12 @@
|
|||
{% endif %}">
|
||||
<td>{{ doc.displayname_with_link }}</td>
|
||||
{% include "doc/search/status_columns.html" %}
|
||||
<td>{% person_link doc.ad %}</td>
|
||||
<td class="d-none d-sm-table-cell">{% person_link doc.ad %}</td>
|
||||
<td>
|
||||
{% for p in doc.blocking_positions %}
|
||||
{% if p.is_old_pos %}<span class="text-muted">{% endif %}
|
||||
{% person_link p.balloter %}
|
||||
({% if p.discuss_time %}{{ p.discuss_time|timesince_days }} days ago{% endif %}
|
||||
{% if doc.get_state_url != "rfc" and p.rev != doc.rev %}for -{{ p.rev }}{% endif %})
|
||||
({% if p.discuss_time %}{{ p.discuss_time|timesince_days }} days ago{% endif %}{% if doc.get_state_url != "rfc" and p.rev != doc.rev %}for -{{ p.rev }}{% endif %})
|
||||
<br>
|
||||
{% if p.is_old_pos %}</span>{% endif %}
|
||||
{% endfor %}
|
||||
|
|
|
@ -23,9 +23,9 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<th data-sort="doc">Document</th>
|
||||
<th data-sort="date">Telechat Date</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="date">Telechat Date</th>
|
||||
<th data-sort="status">Status</th>
|
||||
<th data-sort="ad">Responsible AD</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="ad">Responsible AD</th>
|
||||
<th data-sort="discusses">Discusses</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -44,15 +44,14 @@
|
|||
<br>
|
||||
<span class="fw-bold">{{ doc.title }}</span>
|
||||
</td>
|
||||
<td>{{ doc.telechat }}</td>
|
||||
<td class="d-none d-sm-table-cell">{{ doc.telechat }}</td>
|
||||
{% include "doc/search/status_columns.html" %}
|
||||
<td>{% person_link doc.ad %}</td>
|
||||
<td class="d-none d-sm-table-cell">{% person_link doc.ad %}</td>
|
||||
<td>
|
||||
{% for p in doc.blocking_positions %}
|
||||
{% if p.is_old_pos %}<span class="text-muted">{% endif %}
|
||||
{% person_link p.balloter %}
|
||||
({% if p.discuss_time %}{{ p.discuss_time|timesince_days }} days ago{% endif %}
|
||||
{% if doc.get_state_url != "rfc" and p.rev != doc.rev %}for -{{ p.rev }}{% endif %})
|
||||
({% if p.discuss_time %}{{ p.discuss_time|timesince_days }} days ago{% endif %}{% if doc.get_state_url != "rfc" and p.rev != doc.rev %}for -{{ p.rev }}{% endif %})
|
||||
<br>
|
||||
{% if p.is_old_pos %}</span>{% endif %}
|
||||
{% endfor %}
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
<tbody>
|
||||
{% for e in events %}
|
||||
<tr id="history-{{ e.pk }}">
|
||||
<td class="text-nowrap">{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td>{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td>
|
||||
{{ e.type }}
|
||||
{% if e.response_due and e.response_past_due %}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<tbody>
|
||||
{% for ipr in iprs %}
|
||||
<tr>
|
||||
<td class="text-nowrap text-end">{{ ipr.time|date:"Y-m-d" }}</td>
|
||||
<td class="text-end">{{ ipr.time|date:"Y-m-d" }}</td>
|
||||
<td class="text-end">{{ ipr.id }}</td>
|
||||
<td>
|
||||
{% if ipr.state_id == 'posted' or administrative_list %}
|
||||
|
|
|
@ -20,60 +20,60 @@
|
|||
<td>{{ liaison.state }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">Submitted Date</th>
|
||||
<th>Submitted Date</th>
|
||||
<td>{{ liaison.submitted|date:"Y-m-d" }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">From Group{{ liaison.from_groups.all|pluralize }}</th>
|
||||
<th>From Group{{ liaison.from_groups.all|pluralize }}</th>
|
||||
<td>{{ liaison.from_groups_display }}</td>
|
||||
</tr>
|
||||
{% if liaison.from_contact %}
|
||||
<tr>
|
||||
<th class="text-nowrap">From Contact</th>
|
||||
<th>From Contact</th>
|
||||
<td>{% person_link liaison.from_contact.person %}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
<tr>
|
||||
<th class="text-nowrap">To Group{{ liaison.to_groups.all|pluralize }}</th>
|
||||
<th>To Group{{ liaison.to_groups.all|pluralize }}</th>
|
||||
<td>{{ liaison.to_groups_display }}</td>
|
||||
</tr>
|
||||
{% if liaison.to_contacts %}
|
||||
<tr>
|
||||
<th class="text-nowrap">To Contacts</th>
|
||||
<th>To Contacts</th>
|
||||
<td>{{ liaison.to_contacts|linkify|make_one_per_line|safe|linebreaksbr }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% if liaison.cc_contacts %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Cc</th>
|
||||
<th>Cc</th>
|
||||
<td>{{ liaison.cc_contacts|linkify|make_one_per_line|safe|linebreaksbr }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% if liaison.response_contacts %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Response Contact</th>
|
||||
<th>Response Contact</th>
|
||||
<td>{{ liaison.response_contacts|linkify|make_one_per_line|safe|linebreaksbr }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% if liaison.technical_contacts %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Technical Contact</th>
|
||||
<th>Technical Contact</th>
|
||||
<td>{{ liaison.technical_contacts|linkify|make_one_per_line|safe|linebreaksbr }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% if liaison.action_holder_contacts %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Action Holder Contacts</th>
|
||||
<th>Action Holder Contacts</th>
|
||||
<td>{{ liaison.action_holder_contacts|linkify|make_one_per_line|safe|linebreaksbr }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Purpose</th>
|
||||
<th>Purpose</th>
|
||||
<td>{{ liaison.purpose.name }}</td>
|
||||
</tr>
|
||||
{% if liaison.deadline %}
|
||||
<tr>
|
||||
<th class="text-nowrap">Deadline</th>
|
||||
<th>Deadline</th>
|
||||
<td>
|
||||
{{ liaison.deadline }}
|
||||
{% if liaison.action_taken %}
|
||||
|
@ -95,7 +95,7 @@
|
|||
{% endif %}
|
||||
{% if relations %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Liaisons referring to this
|
||||
</th>
|
||||
<td>
|
||||
|
@ -115,7 +115,7 @@
|
|||
{% if liaison.related_to %}
|
||||
{% if liaison.related_to.approved or is_approving %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Referenced liaison
|
||||
</th>
|
||||
<td>
|
||||
|
@ -132,7 +132,7 @@
|
|||
{% endif %}
|
||||
{% if liaison.other_identifiers %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Other Identifiers
|
||||
</th>
|
||||
<td>
|
||||
|
@ -141,7 +141,7 @@
|
|||
</tr>
|
||||
{% endif %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Attachments
|
||||
</th>
|
||||
<td>
|
||||
|
@ -157,7 +157,7 @@
|
|||
</tr>
|
||||
{% if relations_by %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Liaisons referred by this one
|
||||
</th>
|
||||
<td>
|
||||
|
@ -176,7 +176,7 @@
|
|||
{% endif %}
|
||||
{% if relations_to %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Liaisons referring to this one
|
||||
</th>
|
||||
<td>
|
||||
|
@ -195,7 +195,7 @@
|
|||
{% endif %}
|
||||
{% if liaison.from_contact and liaison.body %}
|
||||
<tr>
|
||||
<th class="text-nowrap">
|
||||
<th>
|
||||
Body
|
||||
</th>
|
||||
<td>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
<tbody>
|
||||
{% for e in events %}
|
||||
<tr>
|
||||
<td class="text-nowrap">{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td>{{ e.time|date:"Y-m-d" }}</td>
|
||||
<td>
|
||||
{{ e.type }}
|
||||
{% if e.response_due and e.response_past_due %}
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
<tr>
|
||||
<th data-sort="date">Date</th>
|
||||
<th data-sort="from">From</th>
|
||||
<th data-sort="to">To</th>
|
||||
<th data-sort="date">Deadline</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="to">To</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="date">Deadline</th>
|
||||
<th data-sort="title">Title</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -14,10 +14,10 @@
|
|||
<tbody>
|
||||
{% for liaison in liaisons %}
|
||||
<tr>
|
||||
<td class="text-nowrap">{{ liaison.sort_date|date:"Y-m-d" }}</td>
|
||||
<td>{{ liaison.sort_date|date:"Y-m-d" }}</td>
|
||||
<td class="liaison-group-col">{{ liaison.from_groups_display }}</td>
|
||||
<td class="liaison-group-col">{{ liaison.to_groups_display }}</td>
|
||||
<td class="text-nowrap">
|
||||
<td class="liaison-group-col d-none d-sm-table-cell">{{ liaison.to_groups_display }}</td>
|
||||
<td class="d-none d-sm-table-cell">
|
||||
{{ liaison.deadline|default:"-"|date:"Y-m-d" }}
|
||||
{% if liaison.deadline and not liaison.action_taken %}
|
||||
<br>
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<tbody>
|
||||
{% for list in lists %}
|
||||
<tr>
|
||||
<td class="text-nowrap">
|
||||
<td>
|
||||
<a href="{{ list.info_url }}">{{ list.name.lower }}</a>
|
||||
</td>
|
||||
<td>{{ list.description|urlize_ietf_docs }}</td>
|
||||
|
|
|
@ -134,7 +134,7 @@
|
|||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
<td class="text-nowrap text-end">{% include "meeting/timeslot_start_end.html" %}</td>
|
||||
<td class="text-end">{% include "meeting/timeslot_start_end.html" %}</td>
|
||||
<td colspan="3">
|
||||
{% if item.timeslot.show_location and item.timeslot.location %}
|
||||
{% location_anchor item.timeslot %}
|
||||
|
@ -184,7 +184,7 @@
|
|||
data-slot-start-ts="{{ item.start_timestamp }}"
|
||||
data-slot-end-ts="{{ item.end_timestamp }}">
|
||||
{% if personalize %}<th class="text-center"></th>{% endif %}
|
||||
<th class="text-nowrap text-end">{% include "meeting/timeslot_start_end.html" %}</th>
|
||||
<th class="text-end">{% include "meeting/timeslot_start_end.html" %}</th>
|
||||
<th colspan="4">
|
||||
{{ item.timeslot.time|date:"l" }}
|
||||
{{ item.timeslot.name|capfirst_allcaps }}
|
||||
|
@ -212,7 +212,7 @@
|
|||
</td>
|
||||
{% endif %}
|
||||
{% if item.slot_type.slug == 'plenary' %}
|
||||
<td class="text-nowrap text-end">{% include "meeting/timeslot_start_end.html" %}</td>
|
||||
<td class="text-end">{% include "meeting/timeslot_start_end.html" %}</td>
|
||||
<td colspan="3">
|
||||
{% if item.timeslot.show_location and item.timeslot.location %}
|
||||
{% location_anchor item.timeslot %}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<th data-sort="date">Date</th>
|
||||
<th data-sort="group">Group</th>
|
||||
<th data-sort="name">Name</th>
|
||||
<th></th>
|
||||
<th class="d-none d-sm-table-cell"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -34,15 +34,13 @@
|
|||
</td>
|
||||
<td>
|
||||
{% if meeting.type_id == "interim" %}
|
||||
<a href="{% url 'ietf.meeting.views.session_details' num=meeting.number acronym=meeting.responsible_group.acronym %}">
|
||||
{{ meeting.number }}
|
||||
{% if meeting.interim_meeting_cancelled %}<span class="badge bg-warning">Cancelled</span>{% endif %}
|
||||
</a>
|
||||
<a href="{% url 'ietf.meeting.views.session_details' num=meeting.number acronym=meeting.responsible_group.acronym %}">{{ meeting.number }}</a>
|
||||
{% if meeting.interim_meeting_cancelled %}<span class="badge bg-warning">Cancelled</span>{% endif %}
|
||||
{% else %}
|
||||
<a href="{% url 'ietf.meeting.views.agenda' num=meeting.number %}">IETF-{{ meeting.number }}</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<td class="d-none d-sm-table-cell">
|
||||
{% if meeting.type_id == "interim" %}
|
||||
{% else %}
|
||||
{% if meeting.get_number > 97 %}
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
<td>
|
||||
<a href="{{ rfc.doc.group.about_url }}">{{ rfc.doc.group.acronym }}</a>
|
||||
</td>
|
||||
<td class="text-nowrap">{{ rfc.time|date:"F Y" }}</td>
|
||||
<td>{{ rfc.time|date:"F Y" }}</td>
|
||||
<td>{{ rfc.doc.title }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
|
|
@ -32,21 +32,22 @@
|
|||
<th data-sort="group">Group</th>
|
||||
<th data-sort="num">Length</th>
|
||||
<th data-sort="num">Size</th>
|
||||
<th data-sort="requester">Requester</th>
|
||||
<th data-sort="ad">AD</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="requester">Requester</th>
|
||||
<th class="d-none d-sm-table-cell" data-sort="ad">AD</th>
|
||||
<th data-sort="constraints">Constraints</th>
|
||||
<th data-sort="special">Special requests</th>
|
||||
</tr>
|
||||
</thead>
|
||||
{% for session in area.list %}
|
||||
{% ifchanged %}
|
||||
{% if not forloop.first %}</tbody>{% endif %}
|
||||
<tbody>
|
||||
<tr>
|
||||
<th class="table-warning" colspan="7">{{ session.current_status_name|capfirst }}</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tbody>
|
||||
{% endifchanged %}
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{% url "ietf.secr.sreq.views.edit" num=meeting.number acronym=session.group.acronym %}">
|
||||
|
@ -58,8 +59,8 @@
|
|||
{% if session.requested_duration %}{{ session.requested_duration|stringformat:"s"|slice:"0:4" }}{% endif %}
|
||||
</td>
|
||||
<td>{{ session.attendees|default:"" }}</td>
|
||||
<td>{% person_link session.requested_by_person %}</td>
|
||||
<td>
|
||||
<td class="d-none d-sm-table-cell">{% person_link session.requested_by_person %}</td>
|
||||
<td class="d-none d-sm-table-cell">
|
||||
{% if session.group.ad_role %}
|
||||
{% person_link session.group.ad_role.person %}
|
||||
{% endif %}
|
||||
|
@ -79,16 +80,12 @@
|
|||
{% 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" %}
|
||||
{% person_link constraint_person %}
|
||||
{% if constraint.name.slug == "bethere" %}{% person_link constraint_person %}
|
||||
{% 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 %}">
|
||||
<span class="{% if constraint_name_slug == 'chair_conflict' %}text-danger{% elif constraint_name_slug == 'tech_overlap' %}text-info{% elif constraint_name_slug == 'key_participant' %}text-success{% else %}{{ constraint_name_slug }}{% endif %}">
|
||||
{% endwith %}
|
||||
{{ constraint.brief_display }}
|
||||
</span>
|
||||
{% endif %}{% if not forloop.last %},{% endif %}
|
||||
{% if constraint_target_parent_id == constraint_source_parent_id and not constraint_person %}</b>{% endif %}
|
||||
{{ constraint.brief_display.strip }}</span>{% endif %}{% if constraint_target_parent_id == constraint_source_parent_id and not constraint_person %}</b>{% endif %}{% if not forloop.last %}, {% endif %}
|
||||
{% endwith %}
|
||||
{% endwith %}
|
||||
{% endwith %}
|
||||
|
@ -100,7 +97,7 @@
|
|||
{% if session.comments %}{{ session.comments|linebreaksbr }}{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
{% if forloop.last %}</tbody>{% endif %}
|
||||
{% endfor %}
|
||||
</table>
|
||||
{% endfor %}
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
data-start-date="{{ meeting.date }}"
|
||||
data-end-date="{{ meeting.end }}"
|
||||
data-time-zone="{{ meeting.time_zone }}">
|
||||
{{ meeting.date }} - {{ meeting.end }}
|
||||
{{ meeting.date }} to {{ meeting.end }}
|
||||
</td>
|
||||
<td>ietf</td>
|
||||
<td>
|
||||
|
@ -69,7 +69,7 @@
|
|||
<td class="session-time"
|
||||
data-start-utc="{{ session.official_timeslotassignment.timeslot.utc_start_time | date:'Y-m-d H:i' }}Z"
|
||||
data-end-utc="{{ session.official_timeslotassignment.timeslot.utc_end_time | date:'Y-m-d H:i' }}Z">
|
||||
{{ session.official_timeslotassignment.timeslot.utc_start_time | date:"Y-m-d H:i" }} - {{ session.official_timeslotassignment.timeslot.utc_end_time | date:"H:i" }}
|
||||
{{ session.official_timeslotassignment.timeslot.utc_start_time | date:"Y-m-d H:i" }}-{{ session.official_timeslotassignment.timeslot.utc_end_time | date:"H:i" }}
|
||||
</td>
|
||||
<td>
|
||||
<a href="{% url 'ietf.group.views.group_home' acronym=group.acronym %}">{{ group.acronym }}</a>
|
||||
|
|
|
@ -90,15 +90,15 @@
|
|||
<tbody>
|
||||
{% for doc in person.rfcs %}
|
||||
<tr>
|
||||
<td class="text-nowrap">
|
||||
<a href="{{ doc.get_absolute_url }}">RFC {{ doc.rfc_number }}</a>
|
||||
<td>
|
||||
<a class="text-nowrap" href="{{ doc.get_absolute_url }}">RFC {{ doc.rfc_number }}</a>
|
||||
</td>
|
||||
<td>{{ doc.pub_date|date:"b Y"|title|nbsp }}</td>
|
||||
<td>{{ doc.title|urlize_ietf_docs }}</td>
|
||||
<td class="text-end">
|
||||
{% with doc.referenced_by_rfcs.count as refbycount %}
|
||||
{% if refbycount %}
|
||||
<a class="text-nowrap text-end"
|
||||
<a class="text-end"
|
||||
href="{% url 'ietf.doc.views_doc.document_referenced_by' doc.canonical_name %}"
|
||||
rel="nofollow">
|
||||
{{ refbycount }} RFC{{ refbycount|pluralize }}
|
||||
|
|
|
@ -61,19 +61,19 @@
|
|||
</tbody>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th class="text-nowrap">.txt format</th>
|
||||
<th>.txt format</th>
|
||||
<td>Button to select a plain-text file of an I-D from a user's local file system.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">.xml format</th>
|
||||
<th>.xml format</th>
|
||||
<td>Button to select an XML file of an I-D from a user's local file system.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">.pdf format</th>
|
||||
<th>.pdf format</th>
|
||||
<td>Button to select a PDF file of an I-D from a user's local file system.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-nowrap">Upload</th>
|
||||
<th>Upload</th>
|
||||
<td>
|
||||
Button to upload the document(s). The tool will begin parsing the plain-text document (or creating it from the xml if only xml is provided) and validate the document. The parsed meta-data will be displayed for user confirmation along with the validation results.
|
||||
</td>
|
||||
|
|
Loading…
Reference in a new issue