## Script (Python) "delete_course_result" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=ids=[], REQUEST=None, action_after_reject=None, action_after_validate=None ##title= ## # $Id: delete_course_result.py 1557 2007-03-15 16:00:27Z joachim $ """ FIXME: add docstring. """ from Products.CMFCore.utils import getToolByName from AccessControl import Unauthorized here = context from urllib import urlencode import logging logger = logging.getLogger('Skins.delete_course_result') mtool = context.portal_membership member = mtool.getAuthenticatedMember() ret_url = here.absolute_url() message = '' if ids: real_ids = [] for id in ids: if context.hasObject(id): real_ids.append(id) if real_ids: try: context.manage_delObjects(real_ids) logger.info('%s deleted StudentCourseResult object %s for %s' % (member,id,context.getStudentId())) message = 'psm_item(s)_deleted' except Unauthorized: logger.info('%s has no permission to delete StudentCourseResult objects for %s' % (member,context.getStudentId())) message = 'no item(s) deleted' else: message = 'psm_select_at_least_one_document' args = {} args['portal_status_message'] = message if action_after_validate: url = context.absolute_url() + '/' + action_after_validate + '?' + urlencode(args) else: url = context.absolute_url() + '?' + urlencode(args) if REQUEST is not None: return REQUEST.RESPONSE.redirect(url)