source: WAeUP_SRP/trunk/skins/waeup_student/display_session_results.py @ 1190

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

corrections already in custom

  • Property svn:keywords set to Id
File size: 3.0 KB
Line 
1##parameters=REQUEST
2# $Id: display_session_results.py 1183 2007-01-03 12:53:20Z joachim $
3"""
4process the Application Form
5return html renderer + psm
6"""
7import DateTime
8current = DateTime.DateTime()
9pr = context.portal_registration
10
11validate = REQUEST.has_key("cpsdocument_create_button")
12
13lt = context.portal_layouts
14#pr = context.portal_registration
15
16res,psm,ds = lt.renderLayout(layout_id= 'student_session_results_search',
17                      schema_id= 'student_returning',
18                      context=context,
19                      mapping=validate and REQUEST,
20                      ob={},
21                      layout_mode='create',
22                      formaction = "display_session_results",
23                      button = "Search",
24                      commit=False,
25                      )
26if psm == 'invalid':
27    return context.display_session_results_form(rendered = res,
28                                 psm = "Please correct your input!",
29                                 #psm = "%s, %s" % (psm,ds),
30                                 firstlayout = True,
31                                 lastlayout = True,
32                                 ds = ds,
33                                 )
34elif psm == '':
35    return context.display_session_results_form(rendered = res,
36                                 psm = None,
37                                 firstlayout = True,
38                                 lastlayout = True,
39                                 ds = ds,
40                                 )
41elif psm == 'valid':
42    pass
43s_fields = context.returning_import.schema()
44student_rec = ds.get('student')
45student = {}
46for field in s_fields:
47    student[field] = getattr(student_rec,field)
48brains = ds.get('results')
49sem1 = []
50sem2 = []
51with_courses_cat = hasattr(context,'courses_catalog')
52
53fields = context.results_import.schema()
54verdict = None
55session = None
56for r in brains:
57    if verdict is None:
58        verdict = r.Verdict
59        session = r.Session
60    result = {}
61    for field in fields:
62        result[field] = getattr(r,field)
63    if with_courses_cat:
64        res = context.courses_catalog(code = r.CosCode)
65    if with_courses_cat and res:
66        result['title'] = res[0].title
67    else:
68        result['title'] = "To Be Determined"
69    if r.Semester == '2':
70        sem2.append(result)
71    else:
72        sem1.append(result)
73#from Products.zdb import set_trace;set_trace()
74results = (sem1, sem2)
75student['verdict'] = verdict
76student['session'] = session
77registered = None
78res = context.students_catalog(matric_no = student_rec.matric_no)
79if res:
80    student_id = res[0].id
81    student_obj = getattr(context.portal_url.getPortalObject().campus.students,student_id,None)
82    if student_obj and hasattr(student_obj,'application'):
83        registered = student_id
84else:
85    registered = "no_student_object"
86return context.session_results_anon_view(student=student,
87                                           results=results,
88                                           name = "%(Firstname)s %(Middlename)s %(Lastname)s" % student_rec,
89                                           registered = registered)
90
Note: See TracBrowser for help on using the repository browser.