source: WAeUP_SRP/trunk/skins/waeup_accommodation/getAccoHallInfo.py @ 654

Last change on this file since 654 was 654, checked in by joachim, 18 years ago

some improvements to accommodation views

File size: 1.4 KB
Line 
1## Script (Python) "cpsdocument_edit"
2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
7##parameters=student=None
8##title=
9##
10# $Id: student_edit.py 486 2006-09-06 10:09:39Z joachim $
11"""
12return Info about the Faculties
13"""
14request = context.REQUEST
15
16wf = context.portal_workflow
17path_info = request.get('PATH_INFO').split('/')
18mtool = context.portal_membership
19pa = context.portal_accommodation
20info = {}
21#dep_id = request.get('PATH_TRANSLATED').split('/')[-2]
22dep_id = context.aq_parent.getId()
23info['is_manager'] = context.isManager()
24info['is_student'] = context.isStudent()
25info['action'] = "%s" % context.absolute_url()
26info['choosen_ids'] = request.get('ids',[])
27info['doc'] = context.getContent()
28bed_types = pa.uniqueValuesFor('bed_type')
29bt_list = []
30bt_names =  context.getBedTypeNames()
31reserved = pa.uniqueValuesFor('student')
32for bt in bed_types:
33    total = len(pa(bed_type=bt))
34    free = len(pa.searchResults({'bed_type': bt,'student':reserved}))
35    bt_list.append({'name': bt_names[bt],
36                    'total': total,
37                    'reserved': free,
38                    })
39info['bed_types'] = bt_list
40res_list = []
41if reserved > 1:
42    for st in reserved:
43        if st:
44            res = pa(hall=context.getId(),student=st)
45            if res:
46                res_list.append({'student': st, 'bed': context.formatBed(res[0].bed) })
47info['reserved'] = res_list
48
49return info
Note: See TracBrowser for help on using the repository browser.