## Script (Python) "getSchoolFee" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=brain=None ##title= ## # $Id: getSchoolFee.py 2534 2007-11-05 06:37:12Z henrik $ """ return SchoolFee """ GRP1 = ('BIO','MAT','ISC','PHE','CHM','YOR','ARB','ENG','FRE','HAU','IGB') GRP2 = ('CSC','BED','FAA','HEC','MUS') #GRP3 = ('ECO','GEO','SOS','ISS','CRS','PES','THA') ARTS = ('CRS','ISS','MUS','SOS','THA','PES','ECO','GEO') # SCS = ('BIO','HEC','MAT','ARB','ISC','IGB','YOR','HAU','ENG ','FRE','PHY ','CSC','PHE','AGE','FAA','BED','HEC') d = {} if not brain.mode.endswith('_sw'): # PRENCE if str(brain.level) == '000' and brain.review_state == 'cleared_and_validated': if brain.department in GRP1: d['all'] = 15370 elif brain.department in GRP2: d['all'] = 15370 else: d['all'] = 15370 # new addition for prence to nce-i students whose fees are different from other nce-i students. This is now redundant! #elif str(brain.level) == '100' and brain.review_state == 'cleared_and_validated' and brain.entry_mode == 'prence': # if brain.department in GRP1: # d['all'] = 10120 # elif brain.department in GRP2: # d['all'] = 10020 # else: # d['all'] = 10520 # NCE I (fresh) elif str(brain.level) == '100' and brain.review_state == 'cleared_and_validated': if brain.department in GRP1: d['all'] = 12550 elif brain.department in GRP2: d['all'] = 12550 else: d['all'] = 11950 # NCE I repeaters elif str(brain.level) in ('100','110') and brain.review_state == 'returning' and brain.verdict == 'C': if brain.department in GRP1: d['all'] = 10050 elif brain.department in GRP2: d['all'] = 10050 else: d['all'] = 9450 # NCE II elif str(brain.level) in ('100','110','120') and brain.review_state == 'returning': if brain.department in GRP1: d['all'] = 7000 elif brain.department in GRP2: d['all'] = 8000 else: d['all'] = 6400 # NCE II repeaters elif str(brain.level) in ('200','210') and brain.verdict == 'C': if brain.department in GRP1: d['all'] = 7000 elif brain.department in GRP2: d['all'] = 8000 else: d['all'] = 6400 # NCE III elif str(brain.level) in ('200','210','220'): if brain.department in GRP1: d['all'] = 8750 elif brain.department in GRP2: d['all'] = 8750 else: d['all'] = 8150 # NCE III repeaters and spillover elif str(brain.level) in ('300','310') and brain.verdict in ('B','C'): if brain.department in GRP1: d['all'] = 4500 elif brain.department in GRP2: d['all'] = 4500 else: d['all'] = 3900 else: d['all'] = 0 ##sandwich fees not yet modified else: # all repeaters if brain.verdict == 'C': d['all'] = 9000 # NCE I elif str(brain.level) == '100' and brain.review_state == 'cleared_and_validated': d['all'] = 11000 # NCE II elif str(brain.level) in ('100','110','120') and brain.review_state == 'returning': d['all'] = 10000 # NCE III elif str(brain.level) in ('200','210','220'): d['all'] = 9500 # NCE IV elif str(brain.level) in ('300','310','320'): d['all'] = 9500 # NCE IV spillover elif str(brain.level) in ('400','410','420') and brain.verdict == 'B': d['all'] = 9000 else: d['all'] = 0 next_info = context.getNextInfo(brain) next_session_str = next_info['next_session_str'] d['next_session_id'] = next_info['next_session_id'] d['description'] = "School Fee for Session %s" % next_session_str return d