## Script (Python) "fixSessionKey" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## # $Id: fixSessionKey.py 3132 2008-02-08 21:10:38Z henrik $ """ """ try: from Products.zdb import set_trace except: def set_trace(): pass mtool = context.portal_membership member = mtool.getAuthenticatedMember() if str(member) not in ('admin'): return import logging import DateTime logger = logging.getLogger('Skins.fixSessionKey') students = context.students_catalog() counter = 0 for student in students: counter += 1 modified = False sid = student.id try: session = student.session entry_session = student.entry_session ls = len(session) les = len (entry_session) except: #logger.info('%s failed' % (sid)) continue if ls == 1: session = '0%c' % session modified = True if les == 1: entry_session = '0%c' % entry_session modified = True if entry_session == '98' and session.lstrip('0') == '8': modified = True entry_session = '08' if modified: context.students_catalog.modifyRecord(id = sid, session=session, entry_session=entry_session) logger.info('%d: %s, %s, %s' % (counter, sid, session, entry_session)) return 'finished!'