source: WAeUP_SRP/trunk/skins/waeup_accommodation/getAccoHallsInfo.py @ 631

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

counting error corrected, cleartext bed_type names

File size: 1.5 KB
RevLine 
[622]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
17mtool = context.portal_membership
18path_info = request.get('PATH_INFO').split('/')
19
20info = {}
21info['is_manager'] = context.isManager()
22info['is_student'] = context.isStudent()
23info['action'] = "%s" % context.campus.absolute_url()
24info['choosen_ids'] = request.get('ids',[])
25items = []
26halls = context.portal_catalog(portal_type='AccoHall')
27for f in halls:
28    row = {}
29    fo = f.getObject()
30    fd = fo.getContent()
31    row['id'] = fo.getId()
32    row['title'] = fd.Title()
33    row['url'] = fo.absolute_url()
34    row['is_editable'] = mtool.checkPermission('Modify portal content', fo)
35    items.append(row)
36info['items'] = items
[626]37pa = context.portal_accommodation
38bed_types = pa.uniqueValuesFor('bed_type')
39bt_list = []
[627]40bt_names =  context.getBedTypeNames()
[626]41for bt in bed_types:
42    res = pa(bed_type=bt)
[627]43    bt_list.append({'name': bt_names[bt], 'count': len(res)})
[626]44info['bed_types'] = bt_list
45reserved = pa.uniqueValuesFor('student')
46res_list = []
47if reserved > 1:
48    for st in reserved:
49        if st:
50            res = pa(student=st)
51            bt_list.append({'student': st, 'bed': res[0].bed })
52info['reserved'] = res_list
53
[622]54return info
Note: See TracBrowser for help on using the repository browser.