Added links to agenda/materials pop-up, materials download, etherpad, jabber room, and webex call-in session for interims on the upcoming meetings page. With the earlier changes from [17555], this fixes issue #2937.
- Legacy-Id: 17576
Note: SVN reference [17555] has been migrated to Git commit e9756d8987
This commit is contained in:
parent
d2ba857003
commit
b74ce877f8
|
@ -783,13 +783,15 @@ class SchedTimeSessAssignment(models.Model):
|
|||
"""Return sensible id string for session, e.g. suitable for use as HTML anchor."""
|
||||
components = []
|
||||
|
||||
components.append(self.schedule.meeting.number)
|
||||
|
||||
if not self.timeslot:
|
||||
components.append("unknown")
|
||||
|
||||
if not self.session or not (getattr(self.session, "historic_group") or self.session.group):
|
||||
components.append("unknown")
|
||||
else:
|
||||
components.append(self.timeslot.time.strftime("%a-%H%M"))
|
||||
components.append(self.timeslot.time.strftime("%Y-%m-%d-%a-%H%M"))
|
||||
|
||||
g = getattr(self.session, "historic_group", None) or self.session.group
|
||||
|
||||
|
|
|
@ -66,8 +66,8 @@ type_ietf_only_patterns = [
|
|||
|
||||
# This is a limited subset of the list above -- many of the views above won't work for interim meetings
|
||||
type_interim_patterns = [
|
||||
url(r'^agenda/(?P<session>[A-Za-z0-9-]+)-drafts.pdf$', views.session_draft_pdf),
|
||||
url(r'^agenda/(?P<session>[A-Za-z0-9-]+)-drafts.tgz$', views.session_draft_tarfile),
|
||||
url(r'^agenda/(?P<acronym>[A-Za-z0-9-]+)-drafts.pdf$', views.session_draft_pdf),
|
||||
url(r'^agenda/(?P<acronym>[A-Za-z0-9-]+)-drafts.tgz$', views.session_draft_tarfile),
|
||||
url(r'^materials/%(document)s((?P<ext>\.[a-z0-9]+)|/)?$' % settings.URL_REGEXPS, views.materials_document),
|
||||
url(r'^agenda.json$', views.json_agenda)
|
||||
]
|
||||
|
|
|
@ -2246,6 +2246,8 @@ def upcoming(request):
|
|||
timeslotassignments__timeslot__time__gte=today
|
||||
)
|
||||
).filter(current_status__in=('sched','canceled'))
|
||||
for session in interim_sessions:
|
||||
session.historic_group = session.group
|
||||
|
||||
entries = list(ietf_meetings)
|
||||
entries.extend(list(interim_sessions))
|
||||
|
|
42
ietf/templates/meeting/interim_session_buttons.html
Normal file
42
ietf/templates/meeting/interim_session_buttons.html
Normal file
|
@ -0,0 +1,42 @@
|
|||
{# Copyright The IETF Trust 2015, All Rights Reserved #}
|
||||
{% load textfilters %}
|
||||
{% load origin %}
|
||||
{% origin %}
|
||||
{% if session.agenda %}
|
||||
{% with session.official_timeslotassignment as item %}
|
||||
{% include "meeting/session_agenda_include.html" %}
|
||||
<!-- agenda pop-up button -->
|
||||
<button class="btn btn-default btn-xs" data-toggle="modal" data-target="#modal-{{item.slug}}" title="Show meeting materials"><span class="fa fa-arrows-alt"></span></button>
|
||||
<!-- materials tar file -->
|
||||
<a class="btn btn-default btn-xs" href="/meeting/{{meeting.number}}/agenda/{{session.group.acronym}}-drafts.tgz" title="Download meeting materials as .tar archive"><span class="fa fa-file-archive-o"></span></a>
|
||||
<!-- materials PDF file -->
|
||||
<a class="btn btn-default btn-xs" href="/meeting/{{ meeting.number }}/agenda/{{session.group.acronym}}-drafts.pdf" title="Download meeting materials as PDF file"><span class="fa fa-file-pdf-o"></span></a>
|
||||
{% endwith %}
|
||||
{% endif %}
|
||||
<!-- etherpad -->
|
||||
<a class="btn btn-default btn-xs" href="https://etherpad.ietf.org/p/notes-ietf-{{ meeting.number }}?useMonospaceFont=true" title="Etherpad for note-takers"><span class="fa fa-edit"></span></a>
|
||||
<!-- Jabber -->
|
||||
<a class="btn btn-default btn-xs" href="xmpp:{{session.jabber_room_name}}@jabber.ietf.org?join" title="Jabber room for {{session.jabber_room_name}}"><span class="fa fa-lightbulb-o"></span></a>
|
||||
<!-- webex -->
|
||||
{% if "https://ietf.webex.com" in session.agenda_note|first_url %}
|
||||
<a class="btn btn-default btn-xs"
|
||||
href="{{ session.agenda_note|first_url }}"
|
||||
title="Webex session"><span class="fa fa-phone"></span>
|
||||
</a>
|
||||
{% elif "https://ietf.webex.com" in session.remote_instructions|first_url %}
|
||||
<a class="btn btn-default btn-xs"
|
||||
href="{{ session.remote_instructions|first_url }}"
|
||||
title="Webex session"><span class="fa fa-phone"></span>
|
||||
</a>
|
||||
{% elif item.timeslot.location.webex_url %}
|
||||
<a class="btn btn-default btn-xs"
|
||||
href="{{item.timeslot.location.webex_url|format:session }}"
|
||||
title="Webex session"><span class="fa fa-phone"></span>
|
||||
</a>
|
||||
{% else %}
|
||||
<span class="btn btn-default btn-xs">
|
||||
<span class="fa fa-phone" style="color: #ddd;"
|
||||
title="No webex info found in remote instructions or agenda note"></span>
|
||||
</span>
|
||||
{% endif %}
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
{# Copyright The IETF Trust 2015, All Rights Reserved #}
|
||||
{% load origin %}
|
||||
{% load origin %}{% origin %}
|
||||
{% load staticfiles %}
|
||||
{% load textfilters %}
|
||||
{% load ietf_filters %}
|
||||
<div class="modal fade" id="modal-{{ item.slug }}" tabindex="-1" role="dialog" aria-labelledby="label-{{ item.slug }}" aria-hidden="true">
|
||||
<div class="modal fade text-left" id="modal-{{ item.slug }}" tabindex="-1" role="dialog" aria-labelledby="label-{{ item.slug }}" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
|
|
|
@ -48,7 +48,8 @@
|
|||
<tr>
|
||||
<th>Date</th>
|
||||
<th>Group</th>
|
||||
<th>Name</th>
|
||||
<th>Meeting</th>
|
||||
<th class="sorter-false text-right"> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
@ -59,19 +60,24 @@
|
|||
<td>{{ meeting.date }} - {{ meeting.end }}</td>
|
||||
<td>ietf</td>
|
||||
<td><a href="{% url 'ietf.meeting.views.agenda' num=meeting.number %}">IETF {{ meeting.number }}</a></td>
|
||||
<td></td>
|
||||
{% endwith %}
|
||||
{% elif entry|classname == 'Session' %}
|
||||
{% with session=entry %}
|
||||
{% with session=entry meeting=entry.meeting%}
|
||||
<td>{{ session.official_timeslotassignment.timeslot.utc_start_time | date:"Y-m-d H:i"}} - {{ session.official_timeslotassignment.timeslot.utc_end_time | date:"H:i e" }}</td>
|
||||
<td>{{ session.group.acronym }}</td>
|
||||
<td><a href="{% url 'ietf.group.views.group_about' acronym=session.group.acronym %}">{{ session.group.acronym }}</a></td>
|
||||
<td>
|
||||
<a href="{% url 'ietf.meeting.views.session_details' num=session.meeting.number acronym=session.group.acronym %}">{{ session.meeting.number }}{% if session.current_status == 'canceled' %} <span class="label label-warning">CANCELLED</span>{% endif %}</a>
|
||||
</td>
|
||||
<td class='text-right'>
|
||||
{% include "meeting/interim_session_buttons.html" %}
|
||||
</td>
|
||||
{% endwith %}
|
||||
{% else %}
|
||||
<td><span class="label-warning">Unexpected entry type: {{entry|classname}}</span></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
@ -132,5 +138,35 @@
|
|||
calendar.render();
|
||||
});
|
||||
|
||||
$(".modal").on("show.bs.modal", function () {
|
||||
var i = $(this).find(".frame");
|
||||
if ($(i).data("src")) {
|
||||
$.get($(i).data("src"), function (data, status, xhr) {
|
||||
var t = xhr.getResponseHeader("content-type");
|
||||
if (t.indexOf("text/plain") > -1) {
|
||||
data = "<pre class='agenda'>" + data + "</pre>";
|
||||
} else if(t.indexOf("text/html") > -1) {
|
||||
// nothing to do here
|
||||
} else {
|
||||
data = "<p>Unknown type: " + xhr.getResponseHeader("content-type") + "</p>";
|
||||
}
|
||||
$(i).html(data);
|
||||
});
|
||||
}
|
||||
var j = $(this).find(".frame2");
|
||||
if ($(j).data("src")) {
|
||||
$.get($(j).data("src"), function (data, status, xhr) {
|
||||
var t = xhr.getResponseHeader("content-type");
|
||||
if (t.indexOf("text/plain") > -1) {
|
||||
data = "<pre class='agenda'>" + data + "</pre>";
|
||||
} else if(t.indexOf("text/html") > -1) {
|
||||
// nothing to do here
|
||||
} else {
|
||||
data = "<p>Unknown type: " + xhr.getResponseHeader("content-type") + "</p>";
|
||||
}
|
||||
$(j).html(data);
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
|
Loading…
Reference in a new issue