From 2e54a5c4435fffa07607bfc4a4405a035b62c332 Mon Sep 17 00:00:00 2001 From: Robert Sparks Date: Wed, 19 Apr 2017 18:04:48 +0000 Subject: [PATCH] Distinguish group that have session requests from those that do not on the materials/editable-groups page. Fixes #2284. Commit ready for merge. - Legacy-Id: 13246 --- ietf/group/templatetags/__init__.py | 0 ietf/group/templatetags/group_tags.py | 8 ++++++++ ietf/meeting/tests_views.py | 2 ++ ietf/templates/meeting/materials_editable_groups.html | 10 +++++++--- 4 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 ietf/group/templatetags/__init__.py create mode 100644 ietf/group/templatetags/group_tags.py diff --git a/ietf/group/templatetags/__init__.py b/ietf/group/templatetags/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/ietf/group/templatetags/group_tags.py b/ietf/group/templatetags/group_tags.py new file mode 100644 index 000000000..012da8a99 --- /dev/null +++ b/ietf/group/templatetags/group_tags.py @@ -0,0 +1,8 @@ +from django import template + +register = template.Library() + +@register.filter +def has_sessions(group,num): + return group.session_set.filter(meeting__number=num).exists() + diff --git a/ietf/meeting/tests_views.py b/ietf/meeting/tests_views.py index ba7e1211d..2b2db9eaa 100644 --- a/ietf/meeting/tests_views.py +++ b/ietf/meeting/tests_views.py @@ -297,12 +297,14 @@ class MeetingTests(TestCase): self.assertEqual(r.status_code, 200) self.assertTrue(meeting.number in unicontent(r)) self.assertTrue("mars" in unicontent(r)) + self.assertFalse("No session requested" in unicontent(r)) self.client.login(username="ad", password="ad+password") r = self.client.get(urlreverse("ietf.meeting.views.materials_editable_groups", kwargs={'num':meeting.number})) self.assertEqual(r.status_code, 200) self.assertTrue(meeting.number in unicontent(r)) self.assertTrue("frfarea" in unicontent(r)) + self.assertTrue("No session requested" in unicontent(r)) self.client.login(username="plain",password="plain+password") r = self.client.get(urlreverse("ietf.meeting.views.materials_editable_groups", kwargs={'num':meeting.number})) diff --git a/ietf/templates/meeting/materials_editable_groups.html b/ietf/templates/meeting/materials_editable_groups.html index ba3e4970e..39b727ed1 100644 --- a/ietf/templates/meeting/materials_editable_groups.html +++ b/ietf/templates/meeting/materials_editable_groups.html @@ -2,16 +2,20 @@ {# Copyright The IETF Trust 2016, All Rights Reserved #} {% load origin %} -{% load ietf_filters managed_groups %} +{% load ietf_filters managed_groups group_tags %} {% block content %}

IETF {{ meeting_num }} meeting materials that you can edit

{% if user and user.is_authenticated and user|managed_groups %} {% for g in user|managed_groups %} -

{{ g.acronym }}

+ {% if g|has_sessions:meeting_num %} +

{{ g.acronym }}

+ {% else %} +

{{ g.acronym }} (No session requested)

+ {% endif %} {% endfor %} {% else %}

You cannot manage the meeting materials for any groups.

{% endif %} -{% endblock %} \ No newline at end of file +{% endblock %}