Skip to content

Commit

Permalink
feat: Links to chatlogs and session recordings on proceedings page (#…
Browse files Browse the repository at this point in the history
…7042)

* feat: Links to chatlogs and session recordings on proceedings page (#6791)

* refactor: Add a url template and convenience function for session_recording url

* refactor: Avoid using the walrus operator
  • Loading branch information
pselkirk authored Feb 20, 2024
1 parent 9ab820f commit 52a7076
Show file tree
Hide file tree
Showing 7 changed files with 43 additions and 22 deletions.
33 changes: 17 additions & 16 deletions ietf/meeting/models.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright The IETF Trust 2007-2022, All Rights Reserved
# Copyright The IETF Trust 2007-2024, All Rights Reserved
# -*- coding: utf-8 -*-


Expand Down Expand Up @@ -1070,6 +1070,9 @@ def recordings(self):
def bluesheets(self):
return list(self.get_material("bluesheets", only_one=False))

def chatlogs(self):
return list(self.get_material("chatlog", only_one=False))

def slides(self):
if not hasattr(self, "_slides_cache"):
self._slides_cache = list(self.get_material("slides", only_one=False))
Expand Down Expand Up @@ -1267,29 +1270,27 @@ def group_parent_at_the_time(self):
return self.meeting.group_at_the_time(self.group_at_the_time().parent)

def audio_stream_url(self):
if (
self.meeting.type.slug == "ietf"
and self.has_onsite_tool
and (url := getattr(settings, "MEETECHO_AUDIO_STREAM_URL", ""))
):
url = getattr(settings, "MEETECHO_AUDIO_STREAM_URL", "")
if self.meeting.type.slug == "ietf" and self.has_onsite_tool and url:
return url.format(session=self)
return None

def video_stream_url(self):
if (
self.meeting.type.slug == "ietf"
and self.has_onsite_tool
and (url := getattr(settings, "MEETECHO_VIDEO_STREAM_URL", ""))
):
url = getattr(settings, "MEETECHO_VIDEO_STREAM_URL", "")
if self.meeting.type.slug == "ietf" and self.has_onsite_tool and url:
return url.format(session=self)
return None

def onsite_tool_url(self):
if (
self.meeting.type.slug == "ietf"
and self.has_onsite_tool
and (url := getattr(settings, "MEETECHO_ONSITE_TOOL_URL", ""))
):
url = getattr(settings, "MEETECHO_ONSITE_TOOL_URL", "")
if self.meeting.type.slug == "ietf" and self.has_onsite_tool and url:
return url.format(session=self)
return None

def session_recording_url(self):
url = getattr(settings, "MEETECHO_SESSION_RECORDING_URL", "")
if self.meeting.type.slug == "ietf" and self.has_onsite_tool and url:
self.group.acronym_upper = self.group.acronym.upper()
return url.format(session=self)
return None

Expand Down
3 changes: 2 additions & 1 deletion ietf/meeting/views.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright The IETF Trust 2007-2023, All Rights Reserved
# Copyright The IETF Trust 2007-2024, All Rights Reserved
# -*- coding: utf-8 -*-


Expand Down Expand Up @@ -3786,6 +3786,7 @@ def _format_materials(items):
'minutes': _format_materials((s, s.minutes()) for s in ss),
'bluesheets': _format_materials((s, s.bluesheets()) for s in ss),
'recordings': _format_materials((s, s.recordings()) for s in ss),
'chatlogs': _format_materials((s, s.chatlogs()) for s in ss),
'slides': _format_materials((s, s.slides()) for s in ss),
'drafts': _format_materials((s, s.drafts()) for s in ss),
'last_update': session.last_update if hasattr(session, 'last_update') else None
Expand Down
1 change: 1 addition & 0 deletions ietf/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -1174,6 +1174,7 @@ def skip_unreadable_post(record):
MEETECHO_ONSITE_TOOL_URL = "https://meetings.conf.meetecho.com/onsite{session.meeting.number}/?session={session.pk}"
MEETECHO_VIDEO_STREAM_URL = "https://meetings.conf.meetecho.com/ietf{session.meeting.number}/?session={session.pk}"
MEETECHO_AUDIO_STREAM_URL = "https://mp3.conf.meetecho.com/ietf{session.meeting.number}/{session.pk}.m3u"
MEETECHO_SESSION_RECORDING_URL = "https://www.meetecho.com/ietf{session.meeting.number}/recordings#{session.group.acronym_upper}"

# Put the production SECRET_KEY in settings_local.py, and also any other
# sensitive or site-specific changes. DO NOT commit settings_local.py to svn.
Expand Down
20 changes: 19 additions & 1 deletion ietf/templates/meeting/group_proceedings.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{# Copyright The IETF Trust 2015, All Rights Reserved #}
{# Copyright The IETF Trust 2015-2024, All Rights Reserved #}
{% load origin %}
{% origin %}
{% load ietf_filters %}
Expand Down Expand Up @@ -54,6 +54,18 @@ <h1>{{ entry.group }}</h1>
</a>
<br>
{% endfor %}
{% for chatlog in entry.chatlogs %}
<a href="{{ chatlog.material|meeting_href:meeting }}">
Chatlog
{% if chatlog.time %}{{chatlog.time|date:"D G:i"}}{% endif %}
</a>
<br>
{% empty %}
<a href="{{ entry.session.chat_archive_url }}">
Chatlog
</a>
<br>
{% endfor %}
</td>
{# recordings #}
<td>
Expand All @@ -64,6 +76,12 @@ <h1>{{ entry.group }}</h1>
</a>
<br>
{% endfor %}
{% if entry.session.video_stream_url %}
<a href="{{ entry.session.session_recording_url }}">
Session recording
</a>
<br>
{% endif %}
</td>
{# slides #}
<td>
Expand Down
2 changes: 1 addition & 1 deletion ietf/templates/meeting/interim_session_buttons.html
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@
{% endfor %}
{% elif session.video_stream_url %}
<a class="btn btn-outline-primary"
href="http://www.meetecho.com/ietf{{ meeting.number }}/recordings#{{ acronym.upper }}"
href="{{ session.session_recording_url }}"
aria-label="Meetecho session recording"
title="Meetecho session recording">
<i class="bi bi-file-slides"></i>
Expand Down
4 changes: 2 additions & 2 deletions ietf/templates/meeting/session_buttons_include.html
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@
{% if session.video_stream_url %}
<a class="btn btn-outline-primary"
role="button"
href="https://www.meetecho.com/ietf{{ meeting.number }}/recordings#{{ acronym.upper }}"
href="{{ session.session_recording_url }}"
aria-label="Session recording"
title="Session recording">
<i class="bi bi-file-slides"></i>
Expand Down Expand Up @@ -351,7 +351,7 @@
{% if session.video_stream_url %}
<li>
<a class="dropdown-item"
href="https://www.meetecho.com/ietf{{ meeting.number }}/recordings#{{ acronym.upper }}">
href="{{ session.session_recording_url }}">
<i class="bi bi-file-slides"></i> Session recording
</a>
</li>
Expand Down
2 changes: 1 addition & 1 deletion ietf/templates/meeting/session_details_panel.html
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ <h3 class="mt-4">Notes and recordings</h3>
{% if session.video_stream_url %}
<tr>
<td>
<a href="https://www.meetecho.com/ietf{{ meeting.number }}/recordings#{{ group.acronym.upper }}">
<a href="{{ session.session_recording_url }}">
<i class="bi bi-file-slides"></i> Session recording
</a>
</td>
Expand Down

1 comment on commit 52a7076

@masalati1122

This comment was marked as spam.

Please sign in to comment.