## Script (Python) "disable_pins" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=REQUEST,ids=[] ##title= ## # $Id: disable_pins.py 3398 2008-04-01 06:28:21Z henrik $ """ disable pins """ import DateTime current = DateTime.DateTime().strftime("%d-%m-%y_%H_%M_%S") import logging logger = logging.getLogger('Skins.disable_pins') request = REQUEST redirect = request.RESPONSE.redirect wftool = context.portal_workflow mtool = context.portal_membership member = mtool.getAuthenticatedMember() #from Products.zdb import set_trace #set_trace() if not ids: return pincat = context.portal_pins for pid in ids: serial,prefix = pid.split("_") res = pincat(prefix_batch=prefix, serial=int(serial)) if len(res) != 1: continue uid = res[0].pin student_id = res[0].student dict = {"pin": uid, "student": "disabled by %s on %s" % (member,current) } pincat.modifyRecord(**dict) logger.info('%s disabled pin %s (%s)' % (member,uid,student_id)) return redirect("%s/campus/pins/search_pins?portal_status_message=PIN %s has been successfully disabled!" % (context.portal_url(),uid))