let the IAB see the new pages

- Legacy-Id: 9600
This commit is contained in:
Robert Sparks 2015-05-04 15:10:34 +00:00
parent 3bf1beb030
commit 4e1b3b2888
3 changed files with 46 additions and 4 deletions

View file

@ -0,0 +1,42 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
def create_iab_roles(apps, schema_editor):
Role = apps.get_model('group','Role')
Group = apps.get_model('group','Group')
Person = apps.get_model('person','Person')
iab = Group.objects.get(acronym='iab')
iab_names = [
'Jari Arkko',
'Mary Barnes',
'Marc Blanchet',
'Ralph Droms',
'Ted Hardie',
'Joe Hildebrand',
'Russ Housley',
'Erik Nordmark',
'Robert Sparks',
'Andrew Sullivan',
'Dave Thaler',
'Brian Trammell',
'Suzanne Woolf',
]
for name in iab_names:
person = Person.objects.get(name=name)
person.role_set.add(Role(name_id='member',group=iab,person=person,email_id=person.email_set.filter(active=True).order_by('-time').first().address))
class Migration(migrations.Migration):
dependencies = [
('group', '0004_auto_20150430_0847'),
]
operations = [
migrations.RunPython(create_iab_roles),
]

View file

@ -46,6 +46,7 @@ def has_role(user, role_names, *args, **kwargs):
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"),
"IAB" : Q(person=person, name="member", group__acronym="iab"),
"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"),

View file

@ -384,8 +384,7 @@ def agenda(request, num=None, name=None, base=None, ext=None):
filtered_assignments = schedule.assignments.exclude(timeslot__type__in=['lead','offagenda'])
return render(request, "meeting/"+base+ext, {"schedule":schedule, "filtered_assignments":filtered_assignments, "updated": updated}, content_type=mimetype[ext])
#TODO - let the IAB in
@role_required('Area Director','Secretariat')
@role_required('Area Director','Secretariat','IAB')
def agenda_by_room(request,num=None):
meeting = get_meeting(num)
schedule = get_schedule(meeting)
@ -397,7 +396,7 @@ def agenda_by_room(request,num=None):
ss_by_day[day].append(ss)
return render(request,"meeting/agenda_by_room.html",{"meeting":meeting,"ss_by_day":ss_by_day})
@role_required('Area Director','Secretariat')
@role_required('Area Director','Secretariat','IAB')
def agenda_by_type(request,num=None,type=None):
meeting = get_meeting(num)
schedule = get_schedule(meeting)
@ -406,7 +405,7 @@ def agenda_by_type(request,num=None,type=None):
scheduledsessions = scheduledsessions.filter(session__type__slug=type)
return render(request,"meeting/agenda_by_type.html",{"meeting":meeting,"scheduledsessions":scheduledsessions})
@role_required('Area Director','Secretariat')
@role_required('Area Director','Secretariat','IAB')
def agenda_by_type_ics(request,num=None,type=None):
meeting = get_meeting(num)
schedule = get_schedule(meeting)