source: WAeUP_SRP/branches/joachim-event-branch/skins/waeup_student/personal_edit.py @ 9819

Last change on this file since 9819 was 1596, checked in by joachim, 18 years ago

merged changes from trunk to joachim-event-branch

File size: 2.2 KB
Line 
1## Script (Python) "personal_edit"
2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
7##parameters=REQUEST, cpsdocument_edit_button=None, cpsdocument_edit_and_view_button=None, action=None
8##title=
9# $Id: application_edit.py 1071 2006-12-16 15:53:13Z joachim $
10"""
11"""
12wftool = context.portal_workflow
13from urllib import urlencode
14from Products.CPSDocument.utils import getFormUidUrlArg
15import DateTime
16current = DateTime.DateTime()
17import logging
18logger = logging.getLogger('Skins.personal_edit')
19
20info = context.getPersonalInfo()
21
22if info is None:
23    logger.info('Anonymous user tried to access %s' % REQUEST.get('URL0'))
24    return REQUEST.RESPONSE.redirect("%s/srp_anonymous_view" % context.portal_url())
25
26student = info['student']
27per = info['per']
28per_doc = info['per_doc']
29state = info['review_state']
30is_valid, ds = per_doc.validate(request=REQUEST,
31                                schema_id = 'student_personal',
32                                layout_id = 'student_personal_fe',
33                                proxy=per,
34                                use_session=True)
35
36psm = ""
37args = {}
38action = "/personal_edit_form"
39base_url = per.absolute_url()
40
41if is_valid:
42    if cpsdocument_edit_button:
43        name = "%(firstname)s %(middlename)s %(lastname)s" % ds
44        name = name.strip()
45        name = name.replace('  ',' ')
46        email = ds.get('email')
47        phone = ds.get('phone')
48        student_id = context.getStudentId()
49        context.students_catalog.modifyRecord(id = student_id,
50                                              name = name,
51                                              email = email,
52                                              phone = phone,
53                                              sex = ds.get('sex'),
54                                             )
55        logger.info('%s edited personal data' % (info['id']))
56        #action = ""
57        #base_url = student.absolute_url()
58        #url = base_url + action
59        psm = 'psm_content_changed'
60else:
61    psm = 'psm_content_error'
62    args = getFormUidUrlArg(REQUEST)
63
64args['portal_status_message'] = psm
65url = base_url + action + '?' + urlencode(args)
66REQUEST.RESPONSE.redirect(url)
Note: See TracBrowser for help on using the repository browser.