@@ -37,12 +37,29 @@ def acronym_name(self):
3737 def area (self ):
3838 if self .irtf :
3939 area = "irtf"
40+ elif self .group_acronym_id < 0 and self .group_acronym_id > - 3 :
41+ area = "1plenary"
42+ elif self .group_acronym_id < - 2 :
43+ area = "ztrain"
4044 else :
4145 try :
4246 area = AreaGroup .objects .get (group = self .group_acronym_id ).area .area_acronym .acronym
4347 except AreaGroup .DoesNotExist :
4448 area = ""
4549 return area
50+ def area_name (self ):
51+ if self .irtf :
52+ area_name = "IRTF"
53+ elif self .group_acronym_id < 0 and self .group_acronym_id > - 3 :
54+ area_name = "Plenary Sessions"
55+ elif self .group_acronym_id < - 2 :
56+ area_name = "Training"
57+ else :
58+ try :
59+ area_name = AreaGroup .objects .get (group = self .group_acronym_id ).area .area_acronym .name
60+ except AreaGroup .DoesNotExist :
61+ area_name = ""
62+ return area_name
4663 def isWG (self ):
4764 if self .irtf :
4865 return False
@@ -268,17 +285,37 @@ class WgMeetingSession(models.Model, ResolveAcronym):
268285 combined_time_id2 = models .ForeignKey (MeetingTime , db_column = 'combined_time_id2' , null = True , blank = True , related_name = 'now5' )
269286 def __str__ (self ):
270287 return "%s at %s" % (self .acronym (), self .meeting )
271- def agenda_file (self ):
288+ def agenda_file (self , interimvar = 0 ):
272289 irtfvar = 0
273290 if self .irtf :
274291 irtfvar = self .irtf
275292 try :
276- filename = WgAgenda .objects .get (meeting = self .meeting , group_acronym_id = self .group_acronym_id ,irtf = irtfvar ,interim = 0 ).filename
293+ filename = WgAgenda .objects .get (meeting = self .meeting , group_acronym_id = self .group_acronym_id ,irtf = irtfvar ,interim = interimvar ).filename
277294 dir = Proceeding .objects .get (meeting_num = self .meeting ).dir_name
278295 retvar = "%s/agenda/%s" % (dir ,filename )
279296 except WgAgenda .DoesNotExist :
280297 retvar = ""
281298 return retvar
299+ def minute_file (self ,interimvar = 0 ):
300+ irtfvar = 0
301+ if self .irtf :
302+ irtfvar = self .irtf
303+ try :
304+ filename = Minute .objects .get (meeting = self .meeting , group_acronym_id = self .group_acronym_id ,irtf = irtfvar ,interim = interimvar ).filename
305+ dir = Proceeding .objects .get (meeting_num = self .meeting ).dir_name
306+ retvar = "%s/minutes/%s" % (dir ,filename )
307+ except WgAgenda .DoesNotExist :
308+ retvar = ""
309+ return retvar
310+ def slides (self ,interimvar = 0 ):
311+ """
312+ Get all slides of this session.
313+ """
314+ irtfvar = 0
315+ if self .irtf :
316+ irtfvar = self .irtf
317+ slides = Slide .objects .filter (meeting = self .meeting ,group_acronym_id = self .group_acronym_id ,irtf = irtfvar ,interim = interimvar ).order_by ("order_num" )
318+ return slides
282319 class Meta :
283320 db_table = 'wg_meeting_sessions'
284321 class Admin :
@@ -299,7 +336,7 @@ class Admin:
299336
300337class Minute (models .Model , ResolveAcronym ):
301338 meeting = models .ForeignKey (Meeting , db_column = 'meeting_num' )
302- group_acronym = models .ForeignKey ( Acronym , raw_id_admin = True )
339+ group_acronym_id = models .IntegerField ( )
303340 filename = models .CharField (blank = True , maxlength = 255 )
304341 irtf = models .BooleanField ()
305342 interim = models .BooleanField ()
@@ -355,6 +392,22 @@ class Slide(models.Model, ResolveAcronym):
355392 in_q = models .IntegerField (null = True , blank = True )
356393 def __str__ (self ):
357394 return "IETF%d: %s slides (%s)" % (self .meeting_id , self .acronym (), self .slide_name )
395+ def file_loc (self ):
396+ dir = Proceeding .objects .get (meeting_num = self .meeting ).dir_name
397+ if self .slide_type_id == 1 :
398+ return "%s/slides/%s-%s/sld1.htm" % (dir ,self .acronym (),self .order_num )
399+ else :
400+ if self .slide_type_id == 2 :
401+ ext = ".pdf"
402+ elif self .slide_type_id == 3 :
403+ ext = ".txt"
404+ elif self .slide_type_id == 4 :
405+ ext = ".ppt"
406+ elif self .slide_type_id == 5 :
407+ ext = ".doc"
408+ else :
409+ ext = ""
410+ return "%s/slides/%s-%s%s" % (dir ,self .acronym (),self .order_num ,ext )
358411 class Meta :
359412 db_table = 'slides'
360413 class Admin :
0 commit comments