From c046739045328664eda687ee48a4182f4a194b0e Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Sun, 20 Jul 2014 17:17:31 +0000 Subject: [PATCH] allow Team Chairs access to proceedings. Commit ready for merge. - Legacy-Id: 8155 --- ietf/ietfauth/utils.py | 23 ++++++++++++----------- ietf/secr/middleware/secauth.py | 3 +-- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/ietf/ietfauth/utils.py b/ietf/ietfauth/utils.py index 96bca58b9..694b12c5e 100644 --- a/ietf/ietfauth/utils.py +++ b/ietf/ietfauth/utils.py @@ -41,20 +41,21 @@ def has_role(user, role_names, *args, **kwargs): return False role_qs = { - "Area Director": Q(person=person, name__in=("pre-ad", "ad"), group__type="area", group__state="active"), - "Secretariat": Q(person=person, name="secr", group__acronym="secretariat"), - "IANA": Q(person=person, name="auth", group__acronym="iana"), + "Area Director": Q(person=person, name__in=("pre-ad", "ad"), group__type="area", group__state="active"), + "Secretariat": Q(person=person, name="secr", group__acronym="secretariat"), + "IANA": Q(person=person, name="auth", group__acronym="iana"), "RFC Editor": Q(person=person, name="auth", group__acronym="rfceditor"), "ISE" : Q(person=person, name="chair", group__acronym="ise"), - "IAD": Q(person=person, name="admdir", group__acronym="ietf"), - "IETF Chair": Q(person=person, name="chair", group__acronym="ietf"), - "IRTF Chair": Q(person=person, name="chair", group__acronym="irtf"), - "IAB Chair": Q(person=person, name="chair", group__acronym="iab"), + "IAD": Q(person=person, name="admdir", group__acronym="ietf"), + "IETF Chair": Q(person=person, name="chair", group__acronym="ietf"), + "IRTF Chair": Q(person=person, name="chair", group__acronym="irtf"), + "IAB Chair": Q(person=person, name="chair", group__acronym="iab"), "IAB Group Chair": Q(person=person, name="chair", group__type="iab", group__state="active"), - "WG Chair": Q(person=person,name="chair", group__type="wg", group__state__in=["active","bof"]), - "WG Secretary": Q(person=person,name="secr", group__type="wg", group__state__in=["active","bof"]), - "RG Chair": Q(person=person,name="chair", group__type="rg", group__state="active"), - "RG Secretary": Q(person=person,name="secr", group__type="rg", group__state="active"), + "WG Chair": Q(person=person,name="chair", group__type="wg", group__state__in=["active","bof"]), + "WG Secretary": Q(person=person,name="secr", group__type="wg", group__state__in=["active","bof"]), + "RG Chair": Q(person=person,name="chair", group__type="rg", group__state="active"), + "RG Secretary": Q(person=person,name="secr", group__type="rg", group__state="active"), + "Team Chair": Q(person=person,name="chair", group__type="team", group__state="active"), "Nomcom Chair": Q(person=person, name="chair", group__type="nomcom", group__state="active", group__acronym__icontains=kwargs.get('year', '0000')), "Nomcom Advisor": Q(person=person, name="advisor", group__type="nomcom", group__state="active", group__acronym__icontains=kwargs.get('year', '0000')), "Nomcom": Q(person=person, group__type="nomcom", group__state="active", group__acronym__icontains=kwargs.get('year', '0000')), diff --git a/ietf/secr/middleware/secauth.py b/ietf/secr/middleware/secauth.py index 3154d9ca1..69417a8c7 100644 --- a/ietf/secr/middleware/secauth.py +++ b/ietf/secr/middleware/secauth.py @@ -5,7 +5,6 @@ from django.contrib.auth.decorators import login_required from ietf.ietfauth.utils import has_role, role_required - class SecAuthMiddleware(object): """ Middleware component that performs custom auth check for secretariat @@ -46,7 +45,7 @@ class SecAuthMiddleware(object): return login_required(view_func)(request,*view_args,**view_kwargs) elif self.is_unrestricted_url(request.path): return role_required('WG Chair','WG Secretary','RG Chair','IAB Group Chair', - 'Area Director','Secretariat')(view_func)(request,*view_args,**view_kwargs) + 'Area Director','Secretariat','Team Chair')(view_func)(request,*view_args,**view_kwargs) else: return role_required('Secretariat')(view_func)(request,*view_args,**view_kwargs) else: