Index: /WAeUP_SRP/trunk/Students.py
===================================================================
--- /WAeUP_SRP/trunk/Students.py	(revision 1727)
+++ /WAeUP_SRP/trunk/Students.py	(revision 1728)
@@ -1352,5 +1352,5 @@
                 format = ','.join(['"%%(%s)s"' % k for k in right_keys])
                 format_error = format + ',"%(error)s"'
-            study_course = record.get('study_course')
+            study_course = makeCertificateCode(record.get('study_course'))
             matric_no = record.get('matric_no')
             student_res = self.students_catalog(matric_no = matric_no)
Index: /WAeUP_SRP/trunk/WAeUPTool.py
===================================================================
--- /WAeUP_SRP/trunk/WAeUPTool.py	(revision 1727)
+++ /WAeUP_SRP/trunk/WAeUPTool.py	(revision 1728)
@@ -63,4 +63,61 @@
                      )
 
+    student_field2types = {   ###(
+                      'StudentApplication': 
+                          {'id': 'application',
+                           'title': 'Application Data',
+                           'fields':
+                             ('jamb_reg_no',
+                              'entry_mode',
+                              'entry_level',
+                              'entry_session',
+                              'jamb_score',
+                              'email',
+                              'phone',
+                              )
+                              },
+                      'StudentPume':
+                          {'id': 'pume',
+                           'title': 'Pume Data',
+                           'fields':
+                             ('pume_score',
+                              )
+                              },
+                      'StudentClearance':
+                          {'id': 'clearance',
+                           'title': 'Clearance Data',
+                           'fields':
+                             ('matric_no',
+                              'entry_level',
+                              'entry_session',
+                              'nationality',
+                              'lga',
+                              )
+                              },
+                         'StudentPersonal':
+                          {'id': 'personal',
+                           'title': 'Personal Data',
+                           'fields':
+                             ('firstname',
+                              'middlename',
+                              'lastname',
+                              'sex',
+                              'email',
+                              'phone',
+                              )
+                              },
+                         'StudentStudyCourse':
+                          {'id': 'study_course',
+                           'title': 'Study Course',
+                           'fields':
+                             ('study_course',
+                              'current_level',
+                              'current_session',
+                              'current_verdict',
+                              )
+                              },
+                         }
+    ###)
+
     def rwrite(self,s):
         response = self.REQUEST.RESPONSE
@@ -199,73 +256,89 @@
         password = self.generatePassword()
         self.makeStudentMember(sid,password)
-        status,entry_mode = dict.get('entry_mode').split('_')
+        f2t = self.student_field2types
+        for pt in f2t.keys():
+            student_obj.invokeFactory(pt,f2t[pt]['id'])
+            sub_obj = getattr(student_obj,f2t[pt]['id'])
+            sub_doc = sub_obj.getContent()
+            self.portal_workflow.doActionFor(sub_obj,'open',dest_container=sub_obj)
+            d = {'Title': f2t[pt]['title']}
+            for field in f2t[pt]['fields']:
+                d[field] = dict.get(field,None) 
+            if pt == 'StudentPersonal':
+                d['sex'] = dict.get('sex') == 'F'
+            sub_doc.edit(mapping = d)
+            self.portal_workflow.doActionFor(sub_obj,'close',dest_container=sub_obj)
+            
+        entry_session = dict.get('entry_session')
         wfaction = 'return'
-        if status == "NEW":
+        if entry_session == self.getSessionId():
             wfaction = 'admit'
-        matric_no = dict.get('matric_no')
-        email = dict.get('email')
-        level = dict.get('level')
-        jamb_reg_no = dict.get('jamb_reg_no')
-        study_course = dict.get('study_course')
         self.portal_workflow.doActionFor(student_obj,wfaction)
         student_obj.manage_setLocalRoles(sid, ['Owner',])
-        student_obj.invokeFactory('StudentApplication','application')
-        application = student_obj.application
-        self.portal_workflow.doActionFor(application,'open',dest_container=application)
-        da = {'Title': 'Application Data'}
-        student_obj.invokeFactory('StudentPersonal','personal')
-        da['entry_mode'] = entry_mode
-        personal = student_obj.personal
-        self.portal_workflow.doActionFor(personal,'open',dest_container=personal)
-        dp = {'Title': 'Personal Data'}
-        student_obj.invokeFactory('StudentClearance','clearance')
-        clearance = student_obj.clearance
-        self.portal_workflow.doActionFor(clearance,'open',dest_container=clearance)
-        dc = {'Title': 'Clearance/Eligibility Record'}
-        dc['matric_no'] = matric_no
-        da['app_email'] = dp['email'] = email
-        da['jamb_reg_no'] = jamb_reg_no
-        dp['firstname'] = dict.get('firstname')
-        dp['middlename'] = dict.get('middlename')
-        dp['lastname'] = dict.get('lastname')
-        da['jamb_lastname'] = "%(firstname)s %(middlename)s %(lastname)s" % dict
-        sex = dict.get('sex')
-        if sex:
-            da['jamb_sex'] = 'F'
-        else:
-            da['jamb_sex'] = 'M'
-        dp['sex'] = sex
-        application.getContent().edit(mapping=da)
-        self.portal_workflow.doActionFor(application,'close',dest_container=application)
-        personal.getContent().edit(mapping=dp)
-        clearance.getContent().edit(mapping=dc)
-        self.portal_workflow.doActionFor(clearance,'close',dest_container=clearance)
-        catd = {}
-        catd['id'] = sid
-        catd['entry_mode']= entry_mode
-        catd['email'] = email
-        catd['jamb_reg_no'] = jamb_reg_no
-        catd['matric_no'] = matric_no
-        catd['name'] = "%(firstname)s %(middlename)s %(lastname)s" % dp
-        catd['sex'] = dp['sex']
-        catd['level'] = level
-        certificate_brain = self.getCertificateBrain(study_course)
-        if certificate_brain:
-            cpath = certificate_brain.getPath().split('/')
-            catd['faculty'] = cpath[-4]
-            catd['department'] = cpath[-3]
-            catd['course'] = study_course
-        self.students_catalog.addRecord(**catd)
-        #
-        # Study Course
-        #
-        student_obj.invokeFactory('StudentStudyCourse','study_course')
-        sc = student_obj.study_course
-        self.portal_workflow.doActionFor(sc,'open',dest_container=sc)
-        dsc = {}
-        dsc['study_course'] = study_course
-        dsc['current_level'] = level
-        sc.getContent().edit(mapping=dsc)
-
+##        matric_no = dict.get('matric_no')
+##        email = dict.get('email')
+##        #level = dict.get('level')
+##        jamb_reg_no = dict.get('jamb_reg_no')
+##        study_course = dict.get('study_course')
+##        self.portal_workflow.doActionFor(student_obj,wfaction)
+##        student_obj.manage_setLocalRoles(sid, ['Owner',])
+##        student_obj.invokeFactory('StudentApplication','application')
+##        application = student_obj.application
+##        self.portal_workflow.doActionFor(application,'open',dest_container=application)
+##        da = {'Title': 'Application Data'}
+##        student_obj.invokeFactory('StudentPersonal','personal')
+##        da['entry_mode'] = entry_mode
+##        personal = student_obj.personal
+##        self.portal_workflow.doActionFor(personal,'open',dest_container=personal)
+##        dp = {'Title': 'Personal Data'}
+##        student_obj.invokeFactory('StudentClearance','clearance')
+##        clearance = student_obj.clearance
+##        self.portal_workflow.doActionFor(clearance,'open',dest_container=clearance)
+##        dc = {'Title': 'Clearance/Eligibility Record'}
+##        dc['matric_no'] = matric_no
+##        da['app_email'] = dp['email'] = email
+##        da['jamb_reg_no'] = jamb_reg_no
+##        dp['firstname'] = dict.get('firstname')
+##        dp['middlename'] = dict.get('middlename')
+##        dp['lastname'] = dict.get('lastname')
+##        da['jamb_lastname'] = "%(firstname)s %(middlename)s %(lastname)s" % dict
+##        sex = dict.get('sex')
+##        if sex:
+##            da['jamb_sex'] = 'F'
+##        else:
+##            da['jamb_sex'] = 'M'
+##        dp['sex'] = sex
+##        application.getContent().edit(mapping=da)
+##        self.portal_workflow.doActionFor(application,'close',dest_container=application)
+##        personal.getContent().edit(mapping=dp)
+##        clearance.getContent().edit(mapping=dc)
+##        self.portal_workflow.doActionFor(clearance,'close',dest_container=clearance)
+####        catd = {}
+####        catd['id'] = sid
+####        catd['entry_mode']= entry_mode
+####        catd['email'] = email
+####        catd['jamb_reg_no'] = jamb_reg_no
+####        catd['matric_no'] = matric_no
+####        catd['name'] = "%(firstname)s %(middlename)s %(lastname)s" % dp
+####        catd['sex'] = dp['sex']
+####        catd['level'] = level
+####        certificate_brain = self.getCertificateBrain(study_course)
+####        if certificate_brain:
+####            cpath = certificate_brain.getPath().split('/')
+####            catd['faculty'] = cpath[-4]
+####            catd['department'] = cpath[-3]
+####            catd['course'] = study_course
+####        self.students_catalog.addRecord(**catd)
+##        #
+##        # Study Course
+##        #
+##        student_obj.invokeFactory('StudentStudyCourse','study_course')
+##        sc = student_obj.study_course
+##        self.portal_workflow.doActionFor(sc,'open',dest_container=sc)
+##        dsc = {}
+##        dsc['study_course'] = study_course
+##        #dsc['current_level'] = level
+##        sc.getContent().edit(mapping=dsc)
+##
         return sid,password
     ###)
Index: /WAeUP_SRP/trunk/doc/srp_documentation.mm
===================================================================
--- /WAeUP_SRP/trunk/doc/srp_documentation.mm	(revision 1727)
+++ /WAeUP_SRP/trunk/doc/srp_documentation.mm	(revision 1728)
@@ -58,4 +58,11 @@
 <node CREATED="1172156481009" ID="Freemind_Link_615926152" LINK="waeup_student_wf.gif" MODIFIED="1172486913476" TEXT="Diagram"/>
 </node>
+<node CREATED="1170883343230" ID="Freemind_Link_1345153944" MODIFIED="1172162754390" TEXT="User Interface">
+<node CREATED="1170883352226" ID="Freemind_Link_1688911390" MODIFIED="1172488273241" TEXT="Officer">
+<node CREATED="1171124982312" ID="Freemind_Link_1991960145" LINK="../profiles/default/layouts/student_create.xml" MODIFIED="1178091125746" TEXT="Layout: student_create" VSHIFT="2"/>
+<node CREATED="1178091137285" ID="Freemind_Link_1938706963" LINK="../skins/waeup_student/add_student.py" MODIFIED="1178091313673" TEXT="PY: add_student"/>
+<node CREATED="1178091137285" ID="Freemind_Link_954925660" LINK="../skins/waeup_student/add_student_form.pt" MODIFIED="1178091384412" TEXT="PT: add_student_form"/>
+</node>
+</node>
 <node CREATED="1170082164451" FOLDED="true" ID="Freemind_Link_1627718074" MODIFIED="1171894825978" TEXT="Accommodation Data">
 <node CREATED="1170083733194" ID="Freemind_Link_1398132513" MODIFIED="1171894857194" TEXT="Id: accommodation06"/>
@@ -78,5 +85,5 @@
 </node>
 </node>
-<node CREATED="1170082164451" FOLDED="true" ID="Freemind_Link_1808367236" MODIFIED="1171711160327" TEXT="Application Data">
+<node CREATED="1170082164451" ID="Freemind_Link_1808367236" MODIFIED="1171711160327" TEXT="Application Data">
 <node CREATED="1170083733194" ID="Freemind_Link_1603566745" MODIFIED="1170862024807" TEXT="Id: application"/>
 <node CREATED="1170083603042" ID="Freemind_Link_1501749959" LINK="../profiles/default/types/StudentApplication.xml" MODIFIED="1171009517689" TEXT="Type: StudentApplication"/>
@@ -116,5 +123,5 @@
 <node CREATED="1172156481009" ID="Freemind_Link_1817393683" LINK="waeup_student_subobject_wf.gif" MODIFIED="1172903933018" TEXT="Diagram"/>
 </node>
-<node CREATED="1170883343230" FOLDED="true" ID="Freemind_Link_998392827" MODIFIED="1172162754390" TEXT="User Interface">
+<node CREATED="1170883343230" ID="Freemind_Link_998392827" MODIFIED="1172162754390" TEXT="User Interface">
 <node CREATED="1170883352226" FOLDED="true" ID="Freemind_Link_556396570" MODIFIED="1172163796143" TEXT="Student">
 <node CREATED="1171124982312" ID="Freemind_Link_683557361" LINK="../profiles/default/layouts/student_clearance_fe.xml" MODIFIED="1172590208847" TEXT="Layout: student_clearance_fe" VSHIFT="2"/>
@@ -128,5 +135,5 @@
 </node>
 </node>
-<node CREATED="1170883352226" FOLDED="true" ID="Freemind_Link_1353155855" MODIFIED="1172488273241" TEXT="Officer">
+<node CREATED="1170883352226" ID="Freemind_Link_1353155855" MODIFIED="1172488273241" TEXT="Officer">
 <node CREATED="1171124982312" ID="Freemind_Link_1920730860" LINK="../profiles/default/layouts/student_clearance.xml" MODIFIED="1172590245309" TEXT="Layout: student_clearance" VSHIFT="2"/>
 <node CREATED="1172488875157" FOLDED="true" ID="Freemind_Link_888492061" MODIFIED="1172488877500" TEXT="view">
@@ -141,5 +148,5 @@
 </node>
 </node>
-<node CREATED="1170082180802" FOLDED="true" ID="Freemind_Link_634523864" MODIFIED="1171711172044" TEXT="Personal Data">
+<node CREATED="1170082180802" ID="Freemind_Link_634523864" MODIFIED="1171711172044" TEXT="Personal Data">
 <node CREATED="1170083733194" ID="Freemind_Link_1809756717" MODIFIED="1170862205697" TEXT="Id: personal"/>
 <node CREATED="1170083603042" ID="Freemind_Link_212388289" LINK="../profiles/default/types/StudentPersonal.xml" MODIFIED="1171010050967" TEXT="Type: StudentPersonal"/>
@@ -171,5 +178,5 @@
 </node>
 </node>
-<node CREATED="1170082392807" ID="Freemind_Link_1979443941" MODIFIED="1171711179966" TEXT="Study Course">
+<node CREATED="1170082392807" FOLDED="true" ID="Freemind_Link_1979443941" MODIFIED="1171711179966" TEXT="Study Course">
 <node CREATED="1170930140692" ID="Freemind_Link_607082969" MODIFIED="1171009488850" TEXT="Id: study_course"/>
 <node CREATED="1170930264337" ID="Freemind_Link_1384807180" LINK="../profiles/default/types/StudentStudyCourse.xml" MODIFIED="1172159914623" TEXT="Type: StudentStudyCourse"/>
@@ -211,9 +218,9 @@
 <node CREATED="1172488817664" ID="Freemind_Link_183452447" MODIFIED="1172488820358" TEXT="view">
 <node CREATED="1172163808013" LINK="../skins/waeup_student/application_slip.pt" MODIFIED="1172488857021" TEXT="PT: application_slip"/>
-<node CREATED="1172163797590" LINK="../skins/waeup_student/application_view.pt" MODIFIED="1172488862899" TEXT="PT: application_view"/>
-</node>
-<node CREATED="1172488821089" FOLDED="true" ID="Freemind_Link_1024852395" MODIFIED="1172488823242" TEXT="edit">
+<node CREATED="1172163797590" ID="Freemind_Link_1061894954" LINK="../skins/waeup_student/application_view.pt" MODIFIED="1178091232930" TEXT="PT: application_view"/>
+</node>
+<node CREATED="1172488821089" ID="Freemind_Link_1024852395" MODIFIED="1172488823242" TEXT="edit">
 <node CREATED="1172163808013" LINK="../skins/waeup_student/application_edit_form.pt" MODIFIED="1172488851172" TEXT="PT: application_edit_form"/>
-<node CREATED="1172163808013" ID="Freemind_Link_987823120" LINK="../skins/waeup_student/application_edit.py" MODIFIED="1173007903444" TEXT="PY: application_edit"/>
+<node CREATED="1172163808013" ID="Freemind_Link_987823120" LINK="../skins/waeup_student/application_edit.py" MODIFIED="1178091292813" TEXT="PY: application_edit"/>
 </node>
 </node>
@@ -303,5 +310,5 @@
 <node CREATED="1171712154817" ID="Freemind_Link_1307066201" LINK="../profiles/default/pumeresults.xml" MODIFIED="1172055646399" TEXT="PUME/PDE Resuts Table"/>
 </node>
-<node CREATED="1172001308558" FOLDED="true" ID="Freemind_Link_1997267023" MODIFIED="1172490300476" TEXT="Profiles">
+<node CREATED="1172001308558" ID="Freemind_Link_1997267023" MODIFIED="1172490300476" TEXT="Profiles">
 <node CREATED="1172001324877" ID="Freemind_Link_1866579033" MODIFIED="1172001330846" TEXT="default">
 <node CREATED="1172001340812" ID="Freemind_Link_274105864" LINK="../profiles/default/directories.xml" MODIFIED="1172001465313" TEXT="portal_directories"/>
Index: /WAeUP_SRP/trunk/profiles/default/actions.xsl
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/actions.xsl	(revision 1728)
+++ /WAeUP_SRP/trunk/profiles/default/actions.xsl	(revision 1728)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+  <xsl:output method="html"/>
+  <xsl:template match="/">
+    <html>
+      <head>
+        <title>
+          <xsl:for-each select="object">
+            <xsl:value-of select="@name"/>
+          </xsl:for-each>
+        </title>
+        <link rel="stylesheet" type="text/css" media="all"
+              href="xsl.css" />      
+      </head>
+      <body>
+        <xsl:for-each select="object">
+          <h2>
+            <xsl:value-of select="@name"/>
+          </h2> 
+          <xsl:for-each select="action-provider">
+            <xsl:sort select="@action_provider"
+                      order="ascending" />
+            <h1>
+              <xsl:value-of select="@name"/>
+            </h1> 
+            <h2>Actions</h2>
+            <table>
+              <tr>
+                <th>Id</th>
+                <th>Title</th>
+                <th>Permission</th>
+                <th>Category</th>
+                <th>Visible</th>
+              </tr>
+              <xsl:for-each select="action">
+                <xsl:sort select="@category"
+                          order="ascending" />
+                <xsl:variable name="color">
+                  <xsl:choose>
+                    <xsl:when test="position() mod 2 = 0">
+                      <xsl:text>#ffffff</xsl:text>
+                    </xsl:when>
+                    <xsl:otherwise>
+                      <xsl:text>#eeeeee</xsl:text>
+                    </xsl:otherwise>
+                  </xsl:choose>
+                </xsl:variable>
+                <tr style="background-color:{$color}">
+                  <td>
+                    <xsl:value-of select="@action_id"/>
+                  </td>
+                  <td>
+                    <xsl:value-of select="@title"/>
+                  </td>
+                  <td>
+                    <xsl:for-each select="permission">
+                      <xsl:value-of select="@value"/>
+                    </xsl:for-each>
+                  </td>
+                  <td>
+                    <xsl:value-of select="@category"/>
+                  </td>
+                  <td>
+                    <xsl:value-of select="@visible"/>
+                  </td>
+                  <xsl:for-each select="element">
+                    <td>
+                      <xsl:value-of select="@value"/>
+                    </td>
+                  </xsl:for-each>
+                </tr>
+                <tr style="background-color:{$color}">
+                  <th>url_expression</th>
+                  <td colspan="4">
+                    <xsl:value-of select="@url_expr"/>
+                  </td>
+                </tr>
+                <tr style="background-color:{$color}">
+                  <th>condition_expression</th>
+                  <td colspan="4">
+                    <xsl:value-of select="@condition_expr"/>
+                  </td>
+                </tr>
+              </xsl:for-each>
+            </table>
+          </xsl:for-each>
+        </xsl:for-each>
+      </body>
+    </html>
+  </xsl:template>
+</xsl:stylesheet>
Index: /WAeUP_SRP/trunk/profiles/default/layouts.xml
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/layouts.xml	(revision 1727)
+++ /WAeUP_SRP/trunk/profiles/default/layouts.xml	(revision 1728)
@@ -11,4 +11,5 @@
   <object name="department" meta_type="CPS Layout"/>
   <object name="faculty" meta_type="CPS Layout"/>
+  <object name="import_student" meta_type="CPS Layout"/>
   <object name="members" meta_type="CPS Layout"/>
   <object name="members_search" meta_type="CPS Layout"/>
Index: /WAeUP_SRP/trunk/profiles/default/layouts/import_student.xml
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/layouts/import_student.xml	(revision 1728)
+++ /WAeUP_SRP/trunk/profiles/default/layouts/import_student.xml	(revision 1728)
@@ -0,0 +1,263 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="layout.xsl"?>
+<object name="student_create" meta_type="CPS Layout">
+ <property name="layout_create_method"></property>
+ <property name="layout_edit_method"></property>
+ <property name="layout_view_method"></property>
+ <property name="style_prefix">layout_waeup_</property>
+ <property name="flexible_widgets"/>
+ <property name="validate_values_expr"></property>
+ <widget name="email" meta_type="Email Widget">
+  <property name="title">Email</property>
+  <property name="fields">
+   <element value="email"/>
+  </property>
+  <property name="is_required">False</property>
+  <property name="label">Email</property>
+  <property name="label_edit">Email</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+ </widget>
+ <widget name="phone" meta_type="String Widget">
+  <property name="title">Phone</property>
+  <property name="fields">
+   <element value="phone"/>
+  </property>
+  <property name="label">Phone</property>
+  <property name="label_edit">Phone</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="display_width">15</property>
+ </widget> 
+ <widget name="address" meta_type="String Widget">
+  <property name="title">Address</property>
+  <property name="fields">
+   <element value="address"/>
+  </property>
+  <property name="label">Address</property>
+  <property name="label_edit">Address</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="display_width">60</property>
+ </widget> 
+ <widget name="state" meta_type="Select Widget">
+  <property name="title">State</property>
+  <property name="fields">
+   <element value="state"/>
+  </property>
+  <property name="label">State</property>
+  <property name="label_edit">State</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">states</property>
+ </widget>
+ <widget name="lga" meta_type="Select Widget">
+  <property name="title">LGA</property>
+  <property name="fields">
+   <element value="lga"/>
+  </property>
+  <property name="label">LGA</property>
+  <property name="label_edit">LGA</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">local_gov_areas</property>
+ </widget>
+ <widget name="firstname" meta_type="String Widget">
+  <property name="title">Firstname</property>
+  <property name="fields">
+   <element value="firstname"/>
+  </property>
+  <property name="is_required">True</property>
+  <property name="label">Firstname</property>
+  <property name="label_edit">Firstname</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+ </widget>
+ <widget name="middlename" meta_type="String Widget">
+  <property name="title">Middlename</property>
+  <property name="fields">
+   <element value="middlename"/>
+  </property>
+  <property name="label">Middlename</property>
+  <property name="label_edit">Middlename</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+ </widget>
+ <widget name="lastname" meta_type="String Widget">
+  <property name="title">Lastname</property>
+  <property name="fields">
+   <element value="lastname"/>
+  </property>
+  <property name="is_required">True</property>
+  <property name="label">Lastname</property>
+  <property name="label_edit">Lastname</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+ </widget>
+ <widget name="entry_mode" meta_type="Select Widget">
+  <property name="title">Entry Mode</property>
+  <property name="fields">
+   <element value="entry_mode"/>
+  </property>
+  <property name="label">Entry Mode</property>
+  <property name="label_edit">Entry Mode</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">entry_modes</property>
+ </widget>
+ <widget name="current_session" meta_type="Select Widget">
+  <property name="title">Current Session</property>
+  <property name="fields">
+   <element value="current_session"/>
+  </property>
+  <property name="label">Current Session</property>
+  <property name="label_edit">Current Session</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">sessions</property>
+ </widget>
+ <widget name="current_level" meta_type="Select Widget">
+  <property name="title">Current Level</property>
+  <property name="fields">
+   <element value="current_level"/>
+  </property>
+  <property name="label">Current Level</property>
+  <property name="label_edit">Current Level</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">courselevel</property>
+ </widget>
+ <widget name="current_verdict" meta_type="Select Widget">
+  <property name="title">Current Verdict</property>
+  <property name="fields">
+   <element value="current_verdict"/>
+  </property>
+  <property name="label">Current Verdict</property>
+  <property name="label_edit">Current Verdict</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">verdicts</property>
+ </widget>
+ <widget name="entry_session" meta_type="Select Widget">
+  <property name="title">Entry Session</property>
+  <property name="fields">
+   <element value="entry_session"/>
+  </property>
+  <property name="label">Entry Session</property>
+  <property name="label_edit">Entry Session</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="vocabulary">sessions</property>
+ </widget>
+ <widget name="jamb_reg_no" meta_type="String Widget">
+  <property name="title">JAMB Registration No</property>
+  <property name="fields">
+   <element value="jamb_reg_no"/>
+  </property>
+  <property name="label">JAMB Registration No</property>
+  <property name="label_edit">JAMB Registration No</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="display_width">10</property>
+ </widget> 
+ <widget name="matric_no" meta_type="String Widget">
+  <property name="title">Matriculation No</property>
+  <property name="fields">
+   <element value="matric_no"/>
+  </property>
+  <property name="label">Matriculation No</property>
+  <property name="label_edit">Matriculation No</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="display_width">10</property>
+ </widget>
+ <widget name="sex" meta_type="Boolean Widget">
+  <property name="title">Sex</property>
+  <property name="fields">
+   <element value="sex"/>
+  </property>
+  <property name="label">Sex</property>
+  <property name="label_edit">Sex</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="label_false">male</property>
+  <property name="label_true">female</property>
+  <property name="render_format">select</property>
+ </widget>
+ <widget name="study_course" meta_type="StudyCourse Widget">
+  <property name="title">Study Course Code</property>
+  <property name="fields">
+   <element value="study_course"/>
+  </property>
+  <property name="label">Study Course Code</property>
+  <property name="label_edit">Study Course Code</property>
+  <property name="is_required">True</property>
+  <property name="readonly_layout_modes"/>
+  <property name="hidden_layout_modes"/>
+  <property name="hidden_readonly_layout_modes"/>
+  <property name="display_width">10</property>
+ </widget>
+ <table>
+  <row>
+   <cell name="firstname"/>
+  </row>
+  <row>
+   <cell name="middlename"/>
+  </row>
+  <row>
+   <cell name="lastname"/>
+  </row>
+  <row>
+   <cell name="sex"/>
+  </row>
+  <row>
+   <cell name="email"/>
+  </row>
+  <row>
+   <cell name="phone"/>
+  </row>
+  <row>
+   <cell name="address"/>
+  </row>
+  <row>
+   <cell name="entry_mode"/>
+  </row>
+  <row>
+   <cell name="entry_session"/>
+  </row>
+  <row>
+   <cell name="jamb_reg_no"/>
+  </row>  
+  <row>
+   <cell name="matric_no"/>
+  </row>
+  <row>
+   <cell name="study_course"/>
+  </row>
+  <row>
+   <cell name="current_session"/>
+  </row>
+  <row>
+   <cell name="current_level"/>
+  </row>
+  <row>
+   <cell name="current_verdict"/>
+  </row>
+ </table>
+</object>
Index: /WAeUP_SRP/trunk/profiles/default/schemas/import_student.xml
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/schemas/import_student.xml	(revision 1727)
+++ /WAeUP_SRP/trunk/profiles/default/schemas/import_student.xml	(revision 1728)
@@ -2,11 +2,12 @@
 <?xml-stylesheet type="text/xsl" href="schema.xsl"?>
 <object name="import_student" meta_type="CPS Schema">
- <field name="mode" meta_type="CPS String Field"/>
  <field name="firstname" meta_type="CPS String Field"/>
  <field name="middlename" meta_type="CPS String Field"/>
  <field name="lastname" meta_type="CPS String Field"/>
  <field name="sex" meta_type="CPS String Field"/>
+ <field name="religion" meta_type="CPS String Field"/>
  <field name="jamb_reg_no" meta_type="CPS String Field"/>
  <field name="entry_mode" meta_type="CPS String Field"/>
+ <field name="entry_session" meta_type="CPS String Field"/>
  <field name="jamb_score" meta_type="CPS Int Field"/>
  <field name="pume_score" meta_type="CPS Int Field"/>
@@ -15,8 +16,10 @@
  <field name="study_course" meta_type="CPS String Field"/>
  <field name="matric_no" meta_type="CPS String Field"/>
- <field name="state" meta_type="CPS String Field"/>
+ <field name="nationality" meta_type="CPS String Field"/>
  <field name="lga" meta_type="CPS String Field"/>
  <field name="phone" meta_type="CPS String Field"/>
  <field name="email" meta_type="CPS String Field"/>
- <field name="address" meta_type="CPS String Field"/>
+ <field name="current_level" meta_type="CPS String Field"/>
+ <field name="current_session" meta_type="CPS String Field"/>
+ <field name="current_verdict" meta_type="CPS String Field"/>
 </object>
Index: /WAeUP_SRP/trunk/profiles/default/vocabularies.xml
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/vocabularies.xml	(revision 1727)
+++ /WAeUP_SRP/trunk/profiles/default/vocabularies.xml	(revision 1728)
@@ -22,4 +22,5 @@
  <object name="high_qual" meta_type="CPS Vocabulary"/>
  <object name="religion" meta_type="CPS Vocabulary"/>
+ <object name="sessions" meta_type="CPS Method Vocabulary"/>
  <object name="exam_types" meta_type="CPS Vocabulary"/>
  <object name="pin_prefixes" meta_type="CPS Vocabulary"/>
Index: /WAeUP_SRP/trunk/profiles/default/vocabularies/sessions.xml
===================================================================
--- /WAeUP_SRP/trunk/profiles/default/vocabularies/sessions.xml	(revision 1728)
+++ /WAeUP_SRP/trunk/profiles/default/vocabularies/sessions.xml	(revision 1728)
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="vocabulary.xsl"?>
+<object name="sessions" meta_type="CPS Method Vocabulary">
+ <property name="title"></property>
+ <property name="title_msgid"></property>
+ <property name="description"></property>
+ <property name="get_vocabulary_method">sessions_voc</property>
+ <property name="add_empty_key">False</property>
+ <property name="empty_key_pos">first</property>
+ <property name="empty_key_value"></property>
+ <property name="empty_key_value_i18n"></property>
+</object>
Index: /WAeUP_SRP/trunk/skins/waeup_default/sessions_voc.py
===================================================================
--- /WAeUP_SRP/trunk/skins/waeup_default/sessions_voc.py	(revision 1728)
+++ /WAeUP_SRP/trunk/skins/waeup_default/sessions_voc.py	(revision 1728)
@@ -0,0 +1,24 @@
+##parameters=key=None 
+# $Id$
+"""
+Return the sessions as an vocabulary
+
+"""
+if key is None:
+    l = []
+    for y in range(1998,2008):
+        l.append( ('%s' % str(y)[-2:],'%4d/%4d' % (y,y+1)))
+    return l
+
+if len(key) != 2:
+    return "invalid Session %s" % key
+try:
+    y = int(key)
+except:
+    return "invalid Session %s" % key
+if y < 90:
+    cent = 2000
+else:
+    cent = 1900
+return "%4d/%4d" % (cent+y, cent+y+1)
+
Index: /WAeUP_SRP/trunk/skins/waeup_student/add_student.py
===================================================================
--- /WAeUP_SRP/trunk/skins/waeup_student/add_student.py	(revision 1727)
+++ /WAeUP_SRP/trunk/skins/waeup_student/add_student.py	(revision 1728)
@@ -19,6 +19,6 @@
 d = {}
 mode = 'edit'
-rendered,psm,ds = lt.renderLayout(layout_id= 'student_create',
-                      schema_id= 'student_create',
+rendered,psm,ds = lt.renderLayout(layout_id= 'import_student',
+                      schema_id= 'import_student',
                       context=context,
                       mapping=validate and REQUEST,
@@ -69,5 +69,4 @@
 logger.info('%s created student %s' % (member,sid))
 return context.add_student_form(rendered = rendered,
-                                 #psm = "%s, %s" % (psm,ds),
                                  mode = 'view',
                                  psm = psm,
