source: WAeUP_SRP/base/skins/waeup_student/application_edit.py @ 2947

Last change on this file since 2947 was 2920, checked in by Henrik Bettermann, 17 years ago

upload missing passport before starting clearance (logic in application_edit.py completely changed)

fix Title for student_accommodation object

  • Property svn:keywords set to Id
File size: 2.0 KB
RevLine 
[845]1## Script (Python) "application_edit"
[478]2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
[2920]7##parameters=REQUEST, cpsdocument_edit_and_view_button=None, action=None, portal_status_message=''
[478]8##title=
[486]9# $Id: application_edit.py 2920 2007-12-11 15:40:35Z henrik $
[478]10"""
11"""
[539]12wftool = context.portal_workflow
[478]13from urllib import urlencode
14from Products.CPSDocument.utils import getFormUidUrlArg
[766]15import DateTime
16current = DateTime.DateTime()
[1016]17import logging
[1571]18logger = logging.getLogger('Skins.application_edit')
[478]19
[2920]20psm = ""
21args = {}
[478]22
[1071]23info = context.getApplicationInfo()
[478]24
[2920]25student = info['student']
26
[1016]27if info is None:
[1866]28    logger.info('Anonymous user tried to access %s' % REQUEST.get('URL0'))
[1024]29    return REQUEST.RESPONSE.redirect("%s/srp_anonymous_view" % context.portal_url())
[1017]30
[2920]31if info['has_passport'] and info['app_doc'].app_email:
32    logger.info('%s proceeded to start clearance' % (info['id']))
33    action = "/start_clearance"
34    base_url = student.absolute_url()
35    url = base_url + action
36    return REQUEST.RESPONSE.redirect(url)
37elif not cpsdocument_edit_and_view_button:
38    action = "/application_edit_form"
39    base_url = student.absolute_url()
40    #url = base_url + action
41    if portal_status_message:
42        args['portal_status_message'] = portal_status_message
43        url = base_url + action + '?' + urlencode(args)
44    else:
45        url = base_url + action
46    return REQUEST.RESPONSE.redirect(url)
47
48
49
[535]50app = info['app']
51app_doc = info['app_doc']
[1071]52state = info['review_state']
[796]53is_valid, ds = app_doc.validate(request=REQUEST,
[788]54                                schema_id = 'student_application',
[2579]55                                layout_id = 'student_application',
[788]56                                proxy=app,
[2390]57                                use_session=False)
[483]58
[2920]59
60action = "/application_edit"
[794]61base_url = app.absolute_url()
[796]62
[851]63if is_valid:
[2920]64    args['portal_status_message'] = "You didn't upload all required data!"
65
[796]66else:
[2920]67    args['portal_status_message'] = "Please correct your error!"
68
69url = base_url + action + '?' + urlencode(args)
70
71
72 
73return REQUEST.RESPONSE.redirect(url)
Note: See TracBrowser for help on using the repository browser.