source: WAeUP_SRP/branches/uli/skins/waeup_academics/getLevelInfo.py @ 17928

Last change on this file since 17928 was 1653, checked in by uli, 17 years ago

Incorporated changeset 1593:1652 of trunk into uli-branch.

  • Property svn:keywords set to Id
File size: 1.8 KB
RevLine 
[845]1## Script (Python) "getLevelInfo"
[556]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##
[805]10# $Id: getLevelInfo.py 1653 2007-03-28 02:35:25Z uli $
[556]11"""
12return Info about the Faculties
13"""
14request = context.REQUEST
15
16wf = context.portal_workflow
[614]17mtool = context.portal_membership
[1653]18academics_path = "%s/campus/academics" % context.portal_url()
[556]19path_info = request.get('PATH_INFO').split('/')
[573]20try:
21    i = int(path_info[-1])
22    p = 0
23except:
24    p = 1
[556]25info = {}
[1514]26pt = request.get('PATH_INFO').split('/')
[573]27
28dep_id = pt[-(3+p)]
29cert_id = pt[-(2+p)]
30level_id = pt[-(1+p)]
31info['action'] = "%s" % context.absolute_url()
[556]32info['choosen_ids'] = request.get('ids',[])
33info['doc'] = context.getContent()
34brain = context.portal_catalog(meta_type="Certificate",id = cert_id)[-1]
35cp = brain.getPath()
36info['container_path'] = cp
37info['dep_id'] = dep_id
38info['cert_id'] = cert_id
39
[614]40res = context.portal_catalog(meta_type="CertificateCourse", container_path="%s/%s" % (cp,level_id))
[565]41first = []
42second = []
43for r in res:
44    row = {}
45    ro = r.getObject()
46    rd = ro.getContent()
[1653]47    course_id = row['id'] = r.getId
[565]48    row['title'] = rd.Title()
[603]49    row['core'] = rd.core_or_elective
[565]50    row['semester'] = rd.semester
51    row['url'] = ro.absolute_url()
[573]52    row['review_state'] = wf.getInfoFor(ro,'review_state','None')
[1653]53    editable = row['is_editable'] = mtool.checkPermission('Modify portal content', ro)
54    if editable:
55        course_res = context.courses_catalog(code=course_id)
56        if course_res:
57            rc = course_res[0]
58            row['real_course_path'] = "%s/%s/%s/courses/%s" % (academics_path,rc.faculty,rc.department,course_id)
[565]59    if rd.semester == 'first':
60        first.append(row)
61    else:
62        second.append(row)
[566]63first.sort()
64second.sort()
[565]65info['first'] = first
66info['second'] = second
[556]67return info
Note: See TracBrowser for help on using the repository browser.