Index: /WAeUP_SRP/fceokene/profiles/default/layouts/payment.xml
===================================================================
--- /WAeUP_SRP/fceokene/profiles/default/layouts/payment.xml	(revision 2835)
+++ /WAeUP_SRP/fceokene/profiles/default/layouts/payment.xml	(revision 2836)
@@ -9,10 +9,10 @@
  <property name="validate_values_expr"></property>
  <widget name="amount" meta_type="String Widget">
-  <property name="title">Amount Authorized</property>
+  <property name="title">Fee Authorized</property>
   <property name="fields">
    <element value="amount"/>
   </property>
-  <property name="label">Amount Authorized</property>
-  <property name="label_edit">Amount Authorized</property>
+  <property name="label">Fee Authorized</property>
+  <property name="label_edit">Fee Authorized</property>
   <property name="readonly_layout_modes">
    <element value="edit"/>
@@ -123,5 +123,5 @@
   <property name="label_edit">Payment Description</property>
   <property name="display_width">40</property>
-  <property name="size_max">40</property>  
+  <property name="size_max">40</property>
   <property name="readonly_layout_modes"/>
   <property name="hidden_layout_modes"/>
Index: /WAeUP_SRP/fceokene/waeup_custom/getSchoolFee.py
===================================================================
--- /WAeUP_SRP/fceokene/waeup_custom/getSchoolFee.py	(revision 2835)
+++ /WAeUP_SRP/fceokene/waeup_custom/getSchoolFee.py	(revision 2836)
@@ -19,15 +19,15 @@
 
 d = {}
-if str(brain.level) == '100':
+if str(brain.level) == '100' and brain.review_state == 'cleared_and_validated':
     if brain.department in ARTS:
         d['all'] = 11520
     else:
         d['all'] = 11995
-elif str(brain.level) == '200':
+elif str(brain.level) == '100' and brain.review_state == 'returning':
     if brain.department in ARTS:
         d['all'] = 10570
     else:
         d['all'] = 11045
-elif str(brain.level) == '300':
+elif str(brain.level) in ('200','300'):
     if brain.department in ARTS:
         d['all'] = 10570
Index: /WAeUP_SRP/fceokene/waeup_custom/getStudyLevelInfo.py
===================================================================
--- /WAeUP_SRP/fceokene/waeup_custom/getStudyLevelInfo.py	(revision 2836)
+++ /WAeUP_SRP/fceokene/waeup_custom/getStudyLevelInfo.py	(revision 2836)
@@ -0,0 +1,124 @@
+## Script (Python) "getStudyLevelInfo"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##parameters=student=None
+##title=
+##
+# $Id: getStudyLevelInfo.py 2760 2007-11-26 07:39:15Z henrik $
+"""
+return Info about the Studylevel
+"""
+
+wf = context.portal_workflow
+mtool = context.portal_membership
+if mtool.isAnonymousUser():
+    return None
+member = mtool.getAuthenticatedMember()
+member_id = str(member)
+
+try:
+    from Products.zdb import set_trace
+except:
+    def set_trace():
+        pass
+
+
+# from Products.AdvancedQuery import Eq, Between, Le,In
+# try:
+#     aq_portal = context.portal_catalog.evalAdvancedQuery
+# except:
+#     aq_portal = context.portal_catalog_real.evalAdvancedQuery
+course_results = context.course_results
+request = context.REQUEST
+response = request.RESPONSE
+import logging
+logger = logging.getLogger('Skins.getStudyLevelInfo')
+
+info = {}
+
+student_id = context.getStudentId()
+level_id  =  context.getId()
+level_doc = info['doc'] = context.getContent()
+
+info['is_so'] = is_so = context.isSectionOfficer()
+info['is_student'] = is_student = context.isStudent()
+info['is_ca'] = is_ca = context.isCourseAdviser()
+info['student'] = student = context.students_catalog(id=student_id)[0]
+info['review_state'] = review_state = student.review_state
+is_current_level = level_id == student.level
+school_fee_paid =  review_state == 'school_fee_paid'
+info['is_current_level'] = is_current_level
+info['has_verdict'] = has_verdict = level_doc.verdict
+
+info['submission_allowed']= school_fee_paid and is_current_level and not has_verdict
+info['validation_allowed']= review_state == 'courses_registered' and is_current_level
+info['rejection_allowed']= review_state in ('courses_registered', 'courses_validated',) and is_current_level
+info['validated'] = review_state == 'courses_validated' and is_current_level
+
+info['show_check_boxes'] =  (is_ca and school_fee_paid and is_current_level and not has_verdict) or\
+                            (is_student and school_fee_paid and is_current_level and not has_verdict) or\
+                            (is_so and is_current_level and not has_verdict)
+
+info['verdict'] = context.portal_vocabularies.verdicts.get(level_doc.verdict).upper()
+info['session'] = context.portal_vocabularies.sessions.get(level_doc.session)
+info['level_str'] = context.portal_vocabularies.levels.get(level_id)
+
+info['choosen_ids'] = request.get('ids',[])
+
+#info['status_info'] = ""
+#if is_student:
+#    if review_state == 'courses_registered':
+#        info['status_info'] = "Request for course validation pending"
+#    elif review_state == 'courses_validated':
+#        info['status_info'] = "Courses validated"
+#elif is_ca:
+#    if review_state == 'courses_registered':
+#        info['status_info'] = "Please validate these courses"
+#    elif review_state == 'courses_validated':
+#        info['status_info'] = "Courses validated"
+
+cert_id = student.course
+info['cert_id'] = cert_id
+if context.objectIds():
+    course_results.moveResultsHere(context,student_id)
+    logger.info("%s initiated moveResultsHere for %s in level %s" % (member_id,student_id,level_id))
+total_credits,gpa,carry_overs,normal1,normal2,normal3 = course_results.getCourses(student_id,level_id)
+info['total_credits'] = total_credits
+
+#start customization
+
+max_credits = 58
+#if context.getId() == student.end_level:
+#    max_credits = 51
+
+#end customization
+
+info['max_credits'] = max_credits
+info['credits_exceeded'] = total_credits > max_credits
+current_session = student.session
+
+info['gpa'] = gpa
+if gpa and total_credits:
+    info['gpa'] = "%4.2f" % (float(gpa)/int(total_credits))
+
+
+
+# carry_overs.sort(cmp_semester_id)
+info['carry_overs'] = carry_overs
+# normal.sort(cmp_semester_id)
+info['normal1'] = normal1
+info['normal2'] = normal2
+info['normal3'] = normal3
+
+info['data_missing'] = not info['normal1'] and not info['normal2'] and not info['normal3']
+info['spillover'] = student.level > student.end_level
+
+students_object = context.portal_url.getPortalObject().campus.students
+student = getattr(students_object, student_id)
+info['app'] = student.application
+info['app_doc'] = student.application.getContent()
+
+return info
Index: /WAeUP_SRP/fceokene/waeup_custom/pay_interswitch.py
===================================================================
--- /WAeUP_SRP/fceokene/waeup_custom/pay_interswitch.py	(revision 2835)
+++ /WAeUP_SRP/fceokene/waeup_custom/pay_interswitch.py	(revision 2836)
@@ -45,13 +45,6 @@
 fulltime = sbrain.mode.endswith('_ft')
 
-# begin customization
-
 if not fee_dict:
     return context.interswitch_form(info=info)
-amount = info['amount'] = fee_dict['all']
-info['pay_ship_to'] = "Federal College of Education Okene"
-
-# end customization
-
 
 info['site_id'] = '83'
@@ -66,5 +59,5 @@
 info['student_id'] = student_id
 info['student_name'] = sbrain.name
-info['type'] = 'ONL' 
+info['type'] = 'ONL'
 info['status'] = 'started'
 info['target'] = sbrain.course
@@ -73,10 +66,14 @@
 now = DateTime.DateTime()
 info['date'] = now
+info['pay_ship_to'] = "Federal College of Education Okene"
 timestamp = "%d" % int(now.timeTime()*1000)
 info['order_id'] = "%s%s" % (student_id[1:],timestamp)
 p_id = "p%s" % timestamp
 
-interswitch_amount = 15000
-info['surcharge'] = interswitch_amount/100
+
+info['surcharge'] = interswitch_amount = '150'
+info['amount'] = amount = fee_dict['all']
+total_amount = 100*int(amount) + 100*int(interswitch_amount)
+
 
 if student_id is None:
@@ -110,4 +107,6 @@
 d.update(info)
 payment.getContent().edit(mapping=d)
+
+
 info['callback_url'] = "%s/payments/%s/interswitch_cb?echo=%s" % (student.absolute_url(),
                                                                   p_id,
@@ -127,6 +126,4 @@
 for arg,field in payment_fields:
     args[arg] = info[field]
-itotal = int(amount)*100
-total_amount = itotal + interswitch_amount
 
 args['Amount'] = "%d" % (total_amount)
