Refactor slightly to get rid of clunky "ex-ad" role, any future uses
should use GroupHistory/RoleHistory instead - Legacy-Id: 3370
This commit is contained in:
parent
dba085791a
commit
f11b558d00
|
@ -570,7 +570,11 @@ def by_ad(request, name):
|
|||
ad_id = None
|
||||
ad_name = None
|
||||
if settings.USE_DB_REDESIGN_PROXY_CLASSES:
|
||||
for p in Person.objects.filter(email__role__name__in=("ad", "ex-ad")):
|
||||
responsible = Document.objects.values_list('ad', flat=True).distinct()
|
||||
for p in Person.objects.filter(Q(email__role__name="ad",
|
||||
email__role__group__type="area",
|
||||
email__role__group__state="active")
|
||||
| Q(pk__in=responsible)):
|
||||
if name == p.name.lower().replace(" ", "."):
|
||||
ad_id = p.id
|
||||
ad_name = p.name
|
||||
|
|
|
@ -84,7 +84,7 @@ def has_role(user, role_names):
|
|||
return False
|
||||
|
||||
role_qs = {
|
||||
"Area Director": Q(email__person=person, name="ad"),
|
||||
"Area Director": Q(email__person=person, name="ad", group__state="active"),
|
||||
"Secretariat": Q(email__person=person, name="secr", group__acronym="secretariat")
|
||||
}
|
||||
|
||||
|
|
|
@ -70,10 +70,12 @@ def make_test_data():
|
|||
email = Email.objects.create(
|
||||
address="ad%s@ietf.org" % i,
|
||||
person=p)
|
||||
Role.objects.create(
|
||||
name_id="ad" if i <= 5 else "ex-ad",
|
||||
group=area,
|
||||
email=email)
|
||||
if i < 6:
|
||||
# active
|
||||
Role.objects.create(
|
||||
name_id="ad",
|
||||
group=area,
|
||||
email=email)
|
||||
|
||||
# group chair
|
||||
u = User.objects.create(username="marschairman")
|
||||
|
|
|
@ -33,7 +33,6 @@ from ietf.utils.history import *
|
|||
# SDOAuthorizedIndividual
|
||||
|
||||
area_director_role = name(RoleName, "ad", "Area Director")
|
||||
inactive_area_director_role = name(RoleName, "ex-ad", "Ex-Area Director", desc="Inactive Area Director")
|
||||
chair_role = name(RoleName, "chair", "Chair")
|
||||
editor_role = name(RoleName, "editor", "Editor")
|
||||
secretary_role = name(RoleName, "secr", "Secretary")
|
||||
|
@ -180,10 +179,6 @@ for o in IESGLogin.objects.all():
|
|||
if o.user_level == IESGLogin.SECRETARIAT_LEVEL:
|
||||
if not Role.objects.filter(name=secretary_role, email=email):
|
||||
Role.objects.create(name=secretary_role, group=Group.objects.get(acronym="secretariat"), email=email)
|
||||
elif o.user_level == IESGLogin.INACTIVE_AD_LEVEL:
|
||||
if not Role.objects.filter(name=inactive_area_director_role, email=email):
|
||||
# connect them directly to the IESG as we don't really know where they belong
|
||||
Role.objects.create(name=inactive_area_director_role, group=Group.objects.get(acronym="iesg"), email=email)
|
||||
|
||||
# AreaDirector
|
||||
for o in AreaDirector.objects.all():
|
||||
|
|
Loading…
Reference in a new issue