source: WAeUP_SRP/branches/regebro-noskins/skins/waeup_student/check_admission.py @ 2348

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

fix conflict

  • Property svn:keywords set to Id
File size: 3.1 KB
Line 
1##parameters=REQUEST
2# $Id: check_admission.py 1000 2006-12-06 11:46:11Z joachim $
3"""
4request Clearance
5"""
6import DateTime
7from urllib import urlencode
8current = DateTime.DateTime()
9pr = context.portal_registration
10type_name = 'StudentApplication'
11ti = context.portal_types[type_name]
12REQUEST.set('type_name',type_name)
13redirect = REQUEST.RESPONSE.redirect
14wf = context.portal_workflow
15validate = REQUEST.has_key("cpsdocument_create_button")
16
17mtool = context.portal_membership
18is_anon = mtool.isAnonymousUser()
19member = mtool.getAuthenticatedMember()
20
21lt = context.portal_layouts
22pr = context.portal_registration
23
24res,psm,ds = lt.renderLayout(layout_id= 'student_application_fe',
25                      schema_id= 'student_application',
26                      context=context,
27                      mapping=validate and REQUEST,
28                      ob={},
29                      layout_mode='create',
30                      formaction = "check_admission",
31                      button = "Check",
32                      )
33if psm == 'invalid':
34    return context.check_admission_pin_form(rendered = res,
35                                 psm = "Please correct your input!",
36                                 #psm = "%s, %s" % (psm,ds),
37                                 firstlayout = True,
38                                 lastlayout = True,
39                                 ds = ds,
40                                 )
41elif psm == '':
42    return context.check_admission_pin_form(rendered = res,
43                                 psm = None,
44                                 firstlayout = True,
45                                 lastlayout = True,
46                                 ds = ds,
47                                 )
48elif psm == 'valid':
49    s_id = ds.get('s_id')
50    if is_anon and not s_id:
51        return context.check_admission_pin_form(rendered = res,
52                                 psm = "You are not allowed to call this form in this context. Please try to log in.",
53                                 #psm = "%s, %s" % (psm,ds),
54                                 firstlayout = True,
55                                 lastlayout = True,
56                                 ds = ds,
57                                 )
58    elif not is_anon:
59        return context.check_admission_pin_form(rendered = res,
60                                 psm = "You are already logged in!",
61                                 #psm = "%s, %s" % (psm,ds),
62                                 firstlayout = True,
63                                 lastlayout = True,
64                                 ds = ds,
65                                 )
66## 
67##    email = ds.get('app_email')
68    student = getattr(context.campus.students, s_id)
69    review_state = wf.getInfoFor(student,'review_state',None)
70    if review_state == "admission_rejected":
71        url = "%s/campus/students/%s/pume/admission_rejected_view" % (context.portal_url(),s_id)
72        return redirect(url)
73    pin = str(ds.get('app_ac_pin_n'))
74    args = {}
75    args['__ac_name'] = s_id
76    #args['__ac_password'] = pin.split('-')[2]
77    args['__ac_password'] = pin
78    args['pin'] = pin
79##    args['email'] = email
80    url = "%s/logged_in?%s" % (context.absolute_url(),urlencode(args))
81    return redirect(url)
82
Note: See TracBrowser for help on using the repository browser.