## Script (Python) "validate_courses" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=student=None, action_after_reject=None, action_after_validate=None ##title= ## # $Id: getStudyCourseInfo.py 1504 2007-02-26 21:20:40Z henrik $ """ close the Students StudyLevel """ from Products.CMFCore.WorkflowCore import WorkflowException import DateTime current = DateTime.DateTime() try: from Products.zdb import set_trace except: def set_trace(): pass request = context.REQUEST mtool = context.portal_membership member = mtool.getAuthenticatedMember() member_id = str(member) import logging logger = logging.getLogger('Skins.validate_courses') wftool = context.portal_workflow students_folder = context.portal_url.getPortalObject().campus.students student_id = context.getStudentId() student = getattr(students_folder,student_id) level_doc = context.getContent() if level_doc.portal_type == 'StudentStudyLevel': level_doc.edit(mapping={'validated_by': member_id, 'validation_date': current,}) try: wftool.doActionFor(student,'validate_courses') except WorkflowException,E: logger.info('%s WorkflowException %s for %s' % (member_id,E,student_id)) return request.RESPONSE.redirect("%s" % context.absolute_url()) logger.info('%s validated course list of %s' % (member_id,student_id)) psm = 'portal_status_message=Course list validated!' url = context.absolute_url() + '/' + action_after_validate + '?' + psm return request.RESPONSE.redirect(url)