## Script (Python) "ti_507_2_resolve" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## # $Id: ti_507_2_resolve.py 3780 2008-11-21 09:26:51Z 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 logger = logging.getLogger('Skins.ti_507_2_resolve') sc = context.students_catalog students = sc() logger.info('start') for student in students: if student.course: course = student.course certificate = context.certificates_catalog(code=course) if not certificate: logger.info("%s, certificate %s does not exist" % (student.id,course)) continue if certificate[0].study_mode: correct_mode = certificate[0].study_mode else: logger.info("%s, certificate %s has no study_mode" % (student.id,course)) continue if not student.mode: logger.info("%s had no study_mode" % (student.id)) if student.mode != correct_mode: old_mode = student.mode d = {} d['id'] = student.id d['mode'] = correct_mode sc.modifyRecord(**d) logger.info("%s, mode %s replaced by %s" % (student.id,old_mode,correct_mode)) logger.info('finished')