44from ietf .person .models import Person
55from ietf .liaisons .models import LiaisonStatement
66from ietf .ietfauth .utils import has_role , passes_test_decorator
7- from ietf .utils .proxy import proxy_personify_role
87
98from ietf .liaisons .accounts import (is_ietfchair , is_iabchair , is_iab_executive_director ,
109 get_ietf_chair , get_iab_chair , get_iab_executive_director ,
11- is_secretariat , can_add_liaison , get_person_for_user )
10+ is_secretariat , can_add_liaison , get_person_for_user , proxy_personify_role )
1211
1312can_submit_liaison_required = passes_test_decorator (
1413 lambda u , * args , ** kwargs : can_add_liaison (u ),
@@ -246,14 +245,15 @@ def get_cc(self, person=None):
246245
247246 def get_from_cc (self , person ):
248247 result = [p for p in role_persons_with_fixed_email (self .obj , "chair" ) if p != person ]
249- result += role_persons_with_fixed_email (self .obj .parent , "ad" ) if self .obj .parent else []
248+ if self .obj .parent :
249+ result += role_persons_with_fixed_email (self .obj .parent , "ad" )
250250 if self .obj .list_subscribe :
251251 result .append (FakePerson (name = '%s Discussion List' % self .obj .name ,
252252 address = self .obj .list_subscribe ))
253253 return result
254254
255255 def needs_approval (self , person = None ):
256- # Check if person is director of this wg area
256+ # Check if person is AD of area
257257 if self .obj .parent and self .obj .parent .role_set .filter (person = person , name = "ad" ):
258258 return False
259259 return True
@@ -399,14 +399,13 @@ class AreaEntityManager(EntityManager):
399399
400400 def __init__ (self , pk = None , name = None , queryset = None ):
401401 super (AreaEntityManager , self ).__init__ (pk , name , queryset )
402- from ietf .group .proxy import Area
403402 if self .queryset == None :
404- self .queryset = Area . active_areas ( )
403+ self .queryset = Group . objects . filter ( type = "area" , state = "active" )
405404
406405 def get_managed_list (self , query_filter = None ):
407406 if not query_filter :
408407 query_filter = {}
409- return [(u'%s_%s' % (self .pk , i .pk ), i .area_acronym . name ) for i in self .queryset .filter (** query_filter ).order_by ('area_acronym__name ' )]
408+ return [(u'%s_%s' % (self .pk , i .pk ), i .name ) for i in self .queryset .filter (** query_filter ).order_by ('name ' )]
410409
411410 def get_entity (self , pk = None ):
412411 if not pk :
@@ -415,7 +414,7 @@ def get_entity(self, pk=None):
415414 obj = self .queryset .get (pk = pk )
416415 except self .queryset .model .DoesNotExist :
417416 return None
418- return AreaEntity (name = obj .area_acronym . name , obj = obj )
417+ return AreaEntity (name = obj .name , obj = obj )
419418
420419 def can_send_on_behalf (self , person ):
421420 query_filter = dict (role__person = person , role__name = "ad" )
@@ -431,13 +430,12 @@ class WGEntityManager(EntityManager):
431430 def __init__ (self , pk = None , name = None , queryset = None ):
432431 super (WGEntityManager , self ).__init__ (pk , name , queryset )
433432 if self .queryset == None :
434- from ietf .group .proxy import IETFWG , Area
435- self .queryset = IETFWG .objects .filter (group_type = 1 , status = IETFWG .ACTIVE , areagroup__area__status = Area .ACTIVE )
433+ self .queryset = Group .objects .filter (type = "wg" , state = "active" , parent__state = "active" ).select_related ("parent" )
436434
437435 def get_managed_list (self , query_filter = None ):
438436 if not query_filter :
439437 query_filter = {}
440- return [(u'%s_%s' % (self .pk , i .pk ), '%s - %s' % (i .group_acronym . acronym , i .group_acronym . name )) for i in self .queryset .filter (** query_filter ).order_by ('group_acronym__acronym ' )]
438+ return [(u'%s_%s' % (self .pk , i .pk ), '%s - %s' % (i .acronym , i .name )) for i in self .queryset .filter (** query_filter ).order_by ('acronym ' )]
441439
442440 def get_entity (self , pk = None ):
443441 if not pk :
@@ -446,7 +444,7 @@ def get_entity(self, pk=None):
446444 obj = self .queryset .get (pk = pk )
447445 except self .queryset .model .DoesNotExist :
448446 return None
449- return WGEntity (name = obj .group_acronym . name , obj = obj )
447+ return WGEntity (name = obj .name , obj = obj )
450448
451449 def can_send_on_behalf (self , person ):
452450 wgs = Group .objects .filter (role__person = person , role__name__in = ("chair" , "secretary" )).values_list ('pk' , flat = True )
0 commit comments