Merged in [17538] from rjsparks@nostrum.com:
Allow an out-of-area AD assigned as the AD for a WG to approve interim requests for that WG. Fixes #2930.
- Legacy-Id: 17539
Note: SVN reference [17538] has been migrated to Git commit 35759c2580
This commit is contained in:
commit
17858beced
|
@ -326,8 +326,9 @@ def can_approve_interim_request(meeting, user):
|
|||
if not session:
|
||||
return False
|
||||
group = session.group
|
||||
if group.type.slug == 'wg' and group.parent.role_set.filter(name='ad', person=person):
|
||||
return True
|
||||
if group.type.slug == 'wg':
|
||||
if group.parent.role_set.filter(name='ad', person=person) or group.role_set.filter(name='ad', person=person):
|
||||
return True
|
||||
if group.type.slug == 'rg' and group.parent.role_set.filter(name='chair', person=person):
|
||||
return True
|
||||
return False
|
||||
|
|
|
@ -1747,9 +1747,12 @@ class InterimTests(TestCase):
|
|||
# related AD
|
||||
user = User.objects.get(username='ad')
|
||||
self.assertTrue(can_approve_interim_request(meeting=meeting,user=user))
|
||||
# other AD
|
||||
# AD from other area
|
||||
user = User.objects.get(username='ops-ad')
|
||||
self.assertFalse(can_approve_interim_request(meeting=meeting,user=user))
|
||||
# AD from other area assigned as the WG AD anyhow (cross-area AD)
|
||||
user = RoleFactory(name_id='ad',group=group).person.user
|
||||
self.assertTrue(can_approve_interim_request(meeting=meeting,user=user))
|
||||
# WG Chair
|
||||
user = User.objects.get(username='marschairman')
|
||||
self.assertFalse(can_approve_interim_request(meeting=meeting,user=user))
|
||||
|
|
Loading…
Reference in a new issue