## 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
"""
MBL= ('MBA','MPAD','LLMCPL','LLMPIL')

d = {}

if brain.mode.endswith('_ft'):
    # fresh full-time Foundation
    if str(brain.level) == '000' and brain.review_state == 'cleared_and_validated':
        if brain.entry_mode == 'rm_ft' and brain.lga.startswith('edo'):
            d['all'] = 50000
        else:
            d['all'] = 60000
    # fresh tull-time students INE
    elif str(brain.level) == '100' and brain.review_state == 'cleared_and_validated' and brain.faculty == 'INE':
        if brain.lga.startswith('edo'):
            d['all'] = 22000
        else:
            d['all'] = 0
    # returning full-time students INE
    elif str(brain.level) in ('100','200','300','400','110','210','310','410') and brain.review_state == 'returning' and brain.faculty == 'INE':
        if brain.lga.startswith('edo'):
            d['all'] = 4300
        else:
            d['all'] = 0
    # postgrad full-time students (fresh)
    elif str(brain.level) == ('600') and brain.review_state == 'cleared_and_validated':
        if brain.lga.startswith('edo'):
            d['all'] = 62500
        elif brain.lga == 'foreigner':
            d['all'] = 189500
        else:
            d['all'] = 69500
    # MBL students (fresh or returning)       
    elif str(brain.level) in ('700','800','710','810') and brain.course in MBL:
        if brain.lga.startswith('edo'):
            d['all'] = 89500
        elif brain.lga == 'foreigner':
            d['all'] = 269500
        else:
            d['all'] = 99500
    # non-MBL students (fresh or returning)   
    elif str(brain.level) in ('700','800','710','810'):
        if brain.lga.startswith('edo'):
            d['all'] = 69500
        if brain.lga == 'foreigner':
            d['all'] = 219500
        else:
            d['all'] = 79500
    # PHD Students       
    elif str(brain.level) in ('900','910','1000','1010'):
        if brain.lga.startswith('edo'):
            d['all'] = 99500
        if brain.lga == 'foreigner':
            d['all'] = 269500
        else:
            d['all'] = 109500         
    else:
        d['all'] = 0        
else:
    # fresh part-time students INE
    if str(brain.level) == '100' and brain.review_state == 'cleared_and_validated' and brain.faculty == 'INE':
        if brain.lga.startswith('edo'):
            d['all'] = 45000
        else:
            d['all'] = 55000
    # returning part-time students INE
    elif str(brain.level) in ('100','200','300','400','110','210','310','410') and brain.review_state == 'returning' and brain.faculty == 'INE':
        if brain.lga.startswith('edo'):
            d['all'] = 30000
        else:
            d['all'] = 40000
    # postgrad part-time students
    elif str(brain.level) == '600' and brain.review_state == 'cleared_and_validated':
        if brain.lga.startswith('edo'):
            d['all'] = 64500
        if brain.lga == 'foreigner':
            d['all'] = 219500
        else:
            d['all'] = 74500
    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