## Script (Python) "getFacultiesInfo" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=student=None ##title= ## # $Id:getFacultiesInfo.py 486 2006-09-06 10:09:39Z joachim $ """ return Info about the Faculties """ request = context.REQUEST def cmp_id(a,b): s1 = "%(id)s" % a s2 = "%(id)s" % b if s1 == s2: return 0 if s1 > s2: return 1 return -1 wf = context.portal_workflow mtool = context.portal_membership path_info = request.get('PATH_INFO').split('/') info = {} info['action'] = "%s" % context.absolute_url() info['choosen_ids'] = request.get('ids',[]) items = [] facs = context.portal_catalog(portal_type='Faculty') for f in facs: row = {} try: fo = f.getObject() fd = fo.getContent() row['id'] = fo.getId() row['title'] = fd.LongTitle() row['url'] = fo.absolute_url() row['is_editable'] = mtool.checkPermission('Modify portal content', fo) items.append(row) except AttributeError: continue items.sort(cmp_id) info['items'] = items return info