diff --git a/ietf/group/info.py b/ietf/group/info.py index 0ae939afd..6602d1ebf 100644 --- a/ietf/group/info.py +++ b/ietf/group/info.py @@ -59,6 +59,7 @@ from ietf.group.utils import can_manage_materials, get_group_or_404 from ietf.utils.pipe import pipe from ietf.settings import MAILING_LIST_INFO_URL from ietf.mailtrigger.utils import gather_relevant_expansions +from ietf.ietfauth.utils import has_role def roles(group, role_name): return Role.objects.filter(group=group, name=role_name).select_related("email", "person") @@ -764,10 +765,13 @@ def meetings(request, acronym=None, group_type=None): else: past.append(s) + can_edit = has_role(request.user,["Secretariat","Area Director"]) or group.has_role(request.user,["Chair","Secretary"]) + return render(request,'group/meetings.html', construct_group_menu_context(request, group, "meetings", group_type, { 'group':group, 'future':future, 'in_progress':in_progress, 'past':past, + 'can_edit':can_edit, })) diff --git a/ietf/templates/group/meetings-row.html b/ietf/templates/group/meetings-row.html index dff8cee5f..4643e97b2 100644 --- a/ietf/templates/group/meetings-row.html +++ b/ietf/templates/group/meetings-row.html @@ -18,10 +18,16 @@ {% else %} {{s.status}} {% endif %} + {% if show_request and s.meeting.type.slug == 'ietf' %} + {% if can_edit %} +
+ Edit Session Request + {% endif %} + {% endif %} - {% if s.minutes %}Minutes{% endif %} - {% if s.agenda %}Agenda{% endif %} - Materials + {% if s.minutes %}Minutes{% endif %} + {% if s.agenda %}Agenda{% endif %} + Materials {% endfor %} diff --git a/ietf/templates/group/meetings.html b/ietf/templates/group/meetings.html index 48f1bc641..68bedf9d3 100644 --- a/ietf/templates/group/meetings.html +++ b/ietf/templates/group/meetings.html @@ -6,13 +6,21 @@ {% block group_content %} {% origin %} + +
+Session requests +{% if can_edit %} +Request a session +{% endif %} +
+ {% if in_progress %}
Meetings in progress
- {% with in_progress as sessions %} + {% with sessions=in_progress show_request=True %} {% include "group/meetings-row.html" %} {% endwith %}
@@ -25,7 +33,7 @@ Future Meetings
- {% with future as sessions %} + {% with sessions=future show_request=True %} {% include "group/meetings-row.html" %} {% endwith %}