fix: move meeting management from base Docs to Meeting (#6586)
* fix: move meeting management from base Docs to Meeting * fix: add permission check for ability to request an interim meeting * fix: guard against no user being logged in --------- Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
This commit is contained in:
parent
f8a06f663e
commit
f1425e4a52
21
ietf/meeting/templatetags/meetings_filters.py
Normal file
21
ietf/meeting/templatetags/meetings_filters.py
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# Copyright The IETF Trust 2023, All Rights Reserved
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
from django import template
|
||||||
|
from ietf.meeting.helpers import can_request_interim_meeting
|
||||||
|
|
||||||
|
import debug # pyflakes:ignore
|
||||||
|
|
||||||
|
register = template.Library()
|
||||||
|
|
||||||
|
@register.filter
|
||||||
|
def can_request_interim(user):
|
||||||
|
"""Determine whether the user can request an interim meeting
|
||||||
|
|
||||||
|
Usage: can_request_interim
|
||||||
|
Returns Boolean. True means user can request an interim meeting.
|
||||||
|
"""
|
||||||
|
|
||||||
|
if not user:
|
||||||
|
return False
|
||||||
|
return can_request_interim_meeting(user)
|
|
@ -1,7 +1,7 @@
|
||||||
{# Copyright The IETF Trust 2015-2022, All Rights Reserved #}
|
{# Copyright The IETF Trust 2015-2022, All Rights Reserved #}
|
||||||
{% load origin %}
|
{% load origin %}
|
||||||
{% origin %}
|
{% origin %}
|
||||||
{% load ietf_filters managed_groups wg_menu active_groups_menu group_filters cache %}
|
{% load ietf_filters managed_groups wg_menu active_groups_menu group_filters cache meetings_filters %}
|
||||||
{% if flavor != 'top' %}
|
{% if flavor != 'top' %}
|
||||||
{% include "base/menu_user.html" %}
|
{% include "base/menu_user.html" %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -144,14 +144,6 @@
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% for g in user|matman_groups %}
|
|
||||||
<li>
|
|
||||||
<a class="dropdown-item {% if flavor != 'top' %}text-wrap{% endif %}"
|
|
||||||
href="{% url "ietf.group.views.meetings" g.acronym %}">
|
|
||||||
{{ g.acronym }} {{ g.type.slug }} meetings
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
{% endfor %}
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if user|has_role:"Review Team Secretary" %}
|
{% if user|has_role:"Review Team Secretary" %}
|
||||||
{% if flavor == 'top' %}
|
{% if flavor == 'top' %}
|
||||||
|
@ -275,12 +267,32 @@
|
||||||
Request a session
|
Request a session
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
{% if user|can_request_interim %}
|
||||||
|
<li>
|
||||||
|
<a class="dropdown-item {% if flavor != 'top' %}text-wrap link-primary{% endif %}"
|
||||||
|
href="{% url 'ietf.meeting.views.interim_request' %}">
|
||||||
|
Request an interim meeting
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
<li>
|
<li>
|
||||||
<a class="dropdown-item {% if flavor != 'top' %}text-wrap{% endif %}"
|
<a class="dropdown-item {% if flavor != 'top' %}text-wrap{% endif %}"
|
||||||
href="{% url 'ietf.meeting.views.meeting_requests' %}">
|
href="{% url 'ietf.meeting.views.meeting_requests' %}">
|
||||||
Session requests
|
Session requests
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
{% if user|matman_groups %}
|
||||||
|
{% if flavor == 'top' %}<li><hr class="dropdown-divider"></li>{% endif %}
|
||||||
|
<li {% if flavor == 'top' %}class="dropdown-header"{% else %}class="nav-item fw-bolder"{% endif %}>Manage</li>
|
||||||
|
{% for g in user|matman_groups %}
|
||||||
|
<li>
|
||||||
|
<a class="dropdown-item {% if flavor != 'top' %}text-wrap link-primary{% endif %}"
|
||||||
|
href="{% url "ietf.group.views.meetings" g.acronym %}">
|
||||||
|
{{ g.acronym }} {{ g.type.slug }} meetings
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
{% endif %}
|
||||||
{% if flavor == 'top' %}
|
{% if flavor == 'top' %}
|
||||||
{% if flavor == 'top' %}
|
{% if flavor == 'top' %}
|
||||||
<li><hr class="dropdown-divider">
|
<li><hr class="dropdown-divider">
|
||||||
|
@ -425,4 +437,4 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if flavor == 'top' %}
|
{% if flavor == 'top' %}
|
||||||
{% include "base/menu_user.html" %}
|
{% include "base/menu_user.html" %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
Loading…
Reference in a new issue