Index: /waeup_product/trunk/Extensions/install.py
===================================================================
--- /waeup_product/trunk/Extensions/install.py	(revision 67)
+++ /waeup_product/trunk/Extensions/install.py	(revision 68)
@@ -225,4 +225,7 @@
                       'Jamb': 'waeup_section_wf',
                       'ScratchCard': 'waeup_section_wf',
+                      'Faculty': 'waeup_section_wf',
+                      'Department': 'waeup_section_wf',
+                      'Course': 'waeup_section_wf',
                       }
 
Index: /waeup_product/trunk/Faculty.py
===================================================================
--- /waeup_product/trunk/Faculty.py	(revision 68)
+++ /waeup_product/trunk/Faculty.py	(revision 68)
@@ -0,0 +1,210 @@
+#-*- mode: python; mode: fold -*-
+from Globals import InitializeClass
+from AccessControl import ClassSecurityInfo
+
+from Products.CMFCore.utils import UniqueObject, getToolByName
+from Products.CMFCore.permissions import View
+from Products.CMFCore.permissions import ModifyPortalContent
+from Products.CPSCore.CPSBase import CPSBase_adder, CPSBaseFolder 
+#from Products.CPSCore.CPSBase import CPSBaseDocument as BaseDocument 
+from Products.CPSDocument.CPSDocument import CPSDocument 
+from Products.CPSCore.CPSBase import CPSBaseBTreeFolder as BaseBTreeFolder 
+
+##class FacultyFolder(BaseBTreeFolder): ###(
+##    """
+##    WAeUP container for the various WAeUP containers data 
+##    """
+##    meta_type = 'Faculty Folder'
+##    portal_type = meta_type
+##    security = ClassSecurityInfo()
+##    
+##        
+##InitializeClass(FacultyFolder)
+##
+##def addFacultyFolder(container, id, REQUEST=None, **kw):
+##    """Add a Student."""
+##    ob = StudentsFolder(id, **kw)
+##    return CPSBase_adder(container, ob, REQUEST=REQUEST)
+#####
+#####)
+
+faculty_fti = { ###(
+    'title': 'WAeUP Faculty',
+    'description': '',
+    'content_icon': '',
+    'content_meta_type': 'Faculty',
+    'factory': 'addFaculty',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': ('Department',),
+    'allow_discussion': False,
+    'actions': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/faculty_index_html',
+          #'action': 'string:${object_url}/cpsdocument_view',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'new_content',
+          'name': 'Add Data',
+          'action': 'string:${object_url}/folder_factories',
+          'condition': "python:1 or len(object.contentItems()) == 0 ",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'contents',
+          'name': 'action_folder_contents',
+          'action': 'string:${object_url}/folder_contents',
+          'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'edit',
+          'name': 'action_edit',
+          'action': 'string:${object_url}/cpsdocument_edit_form',
+          'condition': '',
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+    )
+}
+###)
+
+class Faculty(CPSDocument): ###(
+    """
+    WAeUP Faculty containing Departments 
+    """
+    meta_type = 'Faculty'
+    portal_type = meta_type
+    security = ClassSecurityInfo()
+    
+InitializeClass(Faculty)
+
+def addFaculty(container, id, REQUEST=None, **kw):
+    """Add a Faculty."""
+    ob = Faculty(id, **kw)
+    return CPSBase_adder(container, ob, REQUEST=REQUEST)
+###)
+
+department_fti = { ###(
+    'title': 'WAeUP Department',
+    'description': '',
+    'content_icon': '',
+    'content_meta_type': 'Department',
+    'factory': 'addDepartment',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': ('Course',),
+    'allow_discussion': False,
+    'actions': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/department_index_html',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'new_content',
+          'name': 'Add Data',
+          'action': 'string:${object_url}/folder_factories',
+          'condition': "python:1 or len(object.contentItems()) == 0 ",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'contents',
+          'name': 'action_folder_contents',
+          'action': 'string:${object_url}/folder_contents',
+          'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'edit',
+          'name': 'action_edit',
+          'action': 'string:${object_url}/cpsdocument_edit_form',
+          'condition': '',
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+    )
+}
+###)
+
+class Department(CPSDocument): ###(
+    """
+    WAeUP Department containing the courses and students
+    """
+    meta_type = 'Department'
+    portal_type = meta_type
+    security = ClassSecurityInfo()
+    
+InitializeClass(Department)
+
+def addDepartment(container, id, REQUEST=None, **kw):
+    """Add a Department."""
+    ob = Department(id, **kw)
+    return CPSBase_adder(container, ob, REQUEST=REQUEST)
+###)
+
+course_fti = { ###(
+    'title': 'WAeUP Course',
+    'description': '',
+    'content_icon': '',
+    'content_meta_type': 'Course',
+    'factory': 'addCourse',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': (),
+    'allow_discussion': False,
+    'actions': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/course_index_html',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'new_content',
+          'name': 'Add Data',
+          'action': 'string:${object_url}/folder_factories',
+          'condition': "python:1 or len(object.contentItems()) == 0 ",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'contents',
+          'name': 'action_folder_contents',
+          'action': 'string:${object_url}/folder_contents',
+          'condition': "python:1 or object.getTypeInfo().cps_proxy_type != 'document'",
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'edit',
+          'name': 'action_edit',
+          'action': 'string:${object_url}/cpsdocument_edit_form',
+          'condition': '',
+          'permission': ('Modify portal content',),
+          'category': 'object',
+          'visible': True,},
+    )
+}
+###)
+
+class Course(CPSDocument): ###(
+    """
+    WAeUP Course  
+    """
+    meta_type = 'Course'
+    portal_type = meta_type
+    security = ClassSecurityInfo()
+    
+InitializeClass(Course)
+
+def addCourse(container, id, REQUEST=None, **kw):
+    """Add a Course."""
+    ob = Course(id, **kw)
+    return CPSBase_adder(container, ob, REQUEST=REQUEST)
+###)
Index: /waeup_product/trunk/University.py
===================================================================
--- /waeup_product/trunk/University.py	(revision 67)
+++ /waeup_product/trunk/University.py	(revision 68)
@@ -20,15 +20,4 @@
     portal_type = meta_type
     security = ClassSecurityInfo()
-    
-    security.declarePublic('getStudentFolder')
-    def getStudentsFolder(self):
-        "return the studentsfolder"
-##        data = self._data
-##        print data.items()
-        print self.contentItems()
-        print self.contentValues()
-        print self.contentIds()
-        print self.listFolderContents()
-        print self.getContent().objectItems()
         
 InitializeClass(University)
Index: /waeup_product/trunk/__init__.py
===================================================================
--- /waeup_product/trunk/__init__.py	(revision 67)
+++ /waeup_product/trunk/__init__.py	(revision 68)
@@ -7,11 +7,18 @@
 import University
 import Students
+import Faculty
 import Widgets
 
 fti = (Students.student_fti,
-)
+       Faculty.faculty_fti,
+       Faculty.department_fti,
+       Faculty.course_fti,
+      )
 contentClasses = (University.University,
                   Students.StudentsFolder,
                   Students.Student,
+                  Faculty.Faculty,
+                  Faculty.Department,
+                  Faculty.Course,
                  )
 
@@ -19,4 +26,7 @@
                        Students.addStudentsFolder,
                        Students.addStudent,
+                       Faculty.addFaculty,
+                       Faculty.addDepartment,
+                       Faculty.addCourse,
                        )
 
Index: /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py
===================================================================
--- /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py	(revision 67)
+++ /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py	(revision 68)
@@ -390,7 +390,28 @@
     },
 }
-
-
-###)
+###)
+
+jamb_id = {
+           'type': 'StudentId Widget',
+           'data': {
+                'title': 'Registration Number',
+                'fields': ('reg_nr'),
+                'is_required': True,
+                'label': 'Registration Number',
+                'label_edit': 'Registration Number',
+                'description': '',
+                'help': 'This is the combination of 8 digits and 2 letters you are assigned when you purchase an examination form.',
+                'is_i18n': False,
+                'readonly_layout_modes': (),
+                'hidden_layout_modes': (),
+                'hidden_readonly_layout_modes': (),
+                'hidden_empty': False,
+                'hidden_if_expr': '',
+                'css_class': '',
+                'widget_mode_expr': '',
+                'display_width': 10,
+                'size_max': 10,
+                 },
+           }
 
 admission = { ###(
@@ -440,26 +461,5 @@
             },
         },
-        'jamb_id': {
-            'type': 'StudentId Widget',
-            'data': {
-                'title': 'Registration Number',
-                'fields': ('reg_nr'),
-                'is_required': True,
-                'label': 'Registration Number',
-                'label_edit': 'Registration Number',
-                'description': '',
-                'help': 'This is the combination of 8 digits and 2 letters you are assigned when you purchase an examination form.',
-                'is_i18n': False,
-                'readonly_layout_modes': (),
-                'hidden_layout_modes': (),
-                'hidden_readonly_layout_modes': (),
-                'hidden_empty': False,
-                'hidden_if_expr': '',
-                'css_class': '',
-                'widget_mode_expr': '',
-                'display_width': 10,
-                'size_max': 10,
-            },
-        },
+        'jamb_id' : jamb_id,
     },
    'layout': {
@@ -474,5 +474,41 @@
     },
 }
-
+###)
+
+admission_status = { ###(
+    'widgets': {        
+       'quick_search': {
+            'type': 'String Widget',
+            'data': {
+                'title': 'A search string',
+                'fields': ('admission_sc_id',),
+                'is_required': False,
+                'label': 'Quick Search',
+                'label_edit': 'Quick Search',
+                'description': 'Search',
+                'help': '',
+                'is_i18n': False,
+                'readonly_layout_modes': (),
+                'hidden_layout_modes': (),
+                'hidden_readonly_layout_modes': (),
+                'hidden_empty': False,
+                'hidden_if_expr': 'python:0',
+                'css_class': '',
+                'widget_mode_expr': '',
+                'display_width': 20,
+                'size_max': 0,
+            },
+        },
+
+    },
+   'layout': {
+        'style_prefix': 'layout_admission_status_',
+        'flexible_widgets': (),
+        'ncols': 2,
+        'rows': [
+            [{'widget_id': 'quick_search', 'ncols': 2},],
+        ]
+    },
+}
 ###)
 
@@ -830,4 +866,117 @@
 ###)
 
+course = { ###(
+    'widgets': {
+        'title': {
+            'type': 'String Widget',
+            'data': {
+                'title': '',
+                'fields': ('title',),
+                'is_required': True,
+                'label': 'Title',
+                'label_edit': 'Title',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+        'level': {
+            'type': 'String Widget',
+            'data': {
+                'title': '',
+                'fields': ('level',),
+                'is_required': True,
+                'label': 'Level',
+                'label_edit': 'Level',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+        'code': {
+            'type': 'String Widget',
+            'data': {
+                'title': 'Code',
+                'fields': ('code',),
+                'is_required': True,
+                'label': 'Code',
+                'label_edit': 'Code',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+        'semester': {
+            'type': 'Boolean Widget',
+            'data': {
+                'title': '',
+                'fields': ('semester',),
+                'is_required': True,
+                'label': 'Semester',
+                'label_edit': 'Semester',
+                'label_false': 'Second Semester',
+                'label_true': 'First Semester',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+        'credit': {
+            'type': 'Int Widget',
+            'data': {
+                'title': '',
+                'fields': ('credit',),
+                'is_required': True,
+                'label': 'Credit',
+                'label_edit': 'Credit',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+        'core_elective': {
+            'type': 'Boolean Widget',
+            'data': {
+                'title': '',
+                'fields': ('core_elective',),
+                'is_required': True,
+                'label': 'Core or elective',
+                'label_edit': 'Core or elective',
+                'label_true': 'Core Course',
+                'label_false': 'Elective Course',
+                'description': '',
+                'help': '',
+                'is_i18n': False,
+                'display_width': 10,
+                'size_max': 0,
+            },
+        },
+    },
+   'layout': {
+        'style_prefix': 'layout_default_',
+        'flexible_widgets': (),
+        'ncols': 1,
+        'rows': [
+            [{'widget_id': 'title', 'ncols': 1},],
+            [{'widget_id': 'level', 'ncols': 1},],
+            [{'widget_id': 'code', 'ncols': 1},],
+            [{'widget_id': 'semester', 'ncols': 1},],
+            [{'widget_id': 'credit', 'ncols': 1},],
+            [{'widget_id': 'core_elective', 'ncols': 1},],
+        ]
+    },
+}
+###)
+
 layouts = {}
 layouts['waeup_common'] = common_layout
@@ -838,3 +987,5 @@
 layouts['jambcreate'] = jamb_layoutcreate
 layouts['jamb'] = jamb_layout
+layouts['course'] = course
+layouts['admission_status'] = admission_status
 return layouts
Index: /waeup_product/trunk/skins/waeup_default/getWAeUPSchemas.py
===================================================================
--- /waeup_product/trunk/skins/waeup_default/getWAeUPSchemas.py	(revision 67)
+++ /waeup_product/trunk/skins/waeup_default/getWAeUPSchemas.py	(revision 68)
@@ -3,35 +3,12 @@
 
 university_schema = { ###(
-##   'allow_discussion': {
-##        'type': 'CPS Int Field',
-##        'data': {
-##            'default_expr': 'python:0',
-##            'is_searchabletext': 0,
-##        },
-##    },
-}
-
+}
 ###)
 
 students_folder_schema = { ###(
-##   'allow_discussion': {
-##        'type': 'CPS Int Field',
-##        'data': {
-##            'default_expr': 'python:0',
-##            'is_searchabletext': 0,
-##        },
-##    },
-}
-
+}
 ###)
 
 student_schema = { ###(
-##   'allow_discussion': {
-##        'type': 'CPS Int Field',
-##        'data': {
-##            'default_expr': 'python:0',
-##            'is_searchabletext': 0,
-##            },
-##        },
      'jamb_is_admitted': {
         'type': 'CPS Boolean Field',
@@ -75,11 +52,4 @@
 
 student_personal_schema = { ###(
-##   'allow_discussion': {
-##        'type': 'CPS Int Field',
-##        'data': {
-##            'default_expr': 'python:0',
-##            'is_searchabletext': 0,
-##            },
-##        },
      'firstname': {
         'type': 'CPS String Field',
@@ -102,4 +72,5 @@
      'sex': {
         'type': 'CPS Boolean Field',
+        'default_expr': 'python:True',
         'data': {
             'is_searchabletext': 1,
@@ -128,11 +99,4 @@
 
 jamb_schema = { ###(
-   'allow_discussion': {
-        'type': 'CPS Int Field',
-        'data': {
-            'default_expr': 'python:0',
-            'is_searchabletext': 0,
-            },
-        },
     'reg_nr': {
         'type': 'CPS String Field',
@@ -267,4 +231,48 @@
 
 ###)
+
+faculty_schema = { ###(
+}###)
+
+department_schema = { ###(
+}###)
+
+course_schema = { ###(
+    'level': {
+        'type': 'CPS String Field',
+        'data': {
+            'default_expr': 'string:',
+            'is_searchabletext': True,
+        },
+    },
+    'code': {
+        'type': 'CPS String Field',
+        'data': {
+            'default_expr': 'string:',
+            'is_searchabletext': True,
+        },
+    },
+    'semester': {
+        'type': 'CPS Boolean Field',
+        'data': {
+            'default_expr': 'python:True',
+            'is_searchabletext': False,
+        },
+    },
+    'credit': {
+        'type': 'CPS Int Field',
+        'data': {
+            'default_expr': 'string:',
+            'is_searchabletext': False,
+        },
+    },
+    'core_elective': {
+        'type': 'CPS Boolean Field',
+        'data': {
+            'default_expr': 'python:True',
+            'is_searchabletext': False,
+        },
+    },
+}###)
 
 ##scratch_card = { ###(
@@ -321,4 +329,5 @@
 schemas['student_personal'] = student_personal_schema
 schemas['jamb'] = jamb_schema
+schemas['course'] = course_schema
 #schemas['scratch_card'] = scratch_card
 
Index: /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py
===================================================================
--- /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py	(revision 67)
+++ /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py	(revision 68)
@@ -19,5 +19,5 @@
     'global_allow': 1,
     'filter_content_types': 1,
-    'allowed_content_types': ('StudentsFolder'),
+    'allowed_content_types': ('StudentsFolder','Faculty'),
     'allow_discussion': 0,
     'cps_is_searchable': 1,
@@ -111,5 +111,4 @@
     )
 }
-
 ###)
 
@@ -146,5 +145,4 @@
           )
 }
-
 ###)
 
@@ -225,6 +223,15 @@
     'cps_workspace_wf': 'workspace_content_wf',
     'cps_section_wf': 'section_content_wf',
-}
-
+    'actions_add': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/jamb_index_html',
+          #'action': 'string:${object_url}/cpsdocument_view',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+          )
+}
 ###)
 
@@ -252,52 +259,113 @@
     'cps_workspace_wf': 'workspace_content_wf',
     'cps_section_wf': 'section_content_wf',
-}
-###)
-
-faculty_folder_type = { ###(
-    'title': 'WAeUP Folder for faculties',
-    'description': 'The WAeUP Faculties Folder',
+    'actions_add': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/jamb_index_html',
+          #'action': 'string:${object_url}/cpsdocument_view',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+          )
+}
+###)
+
+faculty_type = { ###(
+    'title': 'WAeUP Faculty',
+    'description': '',
     'content_icon': '',
-    'content_meta_type': 'FacultiesFolder',
-    'product': 'CPSDefault',
-    'factory': 'addFolder',
-    'immediate_view': 'folder_view',
-    'global_allow': 1,
-    'filter_content_types': 1,
-    'allowed_content_types': ('Faculty'),
-    'allow_discussion': 0,
-    'cps_is_searchable': 1,
-    'cps_display_as_document_in_listing': 1,
-    'cps_proxy_type': 'folder',
-    'schemas': ['metadata', 'common', 'folder'],
-    'layouts': ['waeup_common','folder'],
-    'layout_clusters': ['metadata:metadata'],
-    'cps_section_wf': 'waeup_section_wf',
-    'actions': ({'id': 'view',
-                 'name': 'action_view',
-                 'action': 'folder_view',
-                 'permissions': (View,)},
-                {'id': 'new_content',
-                 'name': 'action_new_content',
-                 'action': 'folder_factories',
-                 'permissions': (AddPortalContent,)},
-                {'id': 'contents',
-                 'name': 'action_folder_contents',
-                 'action': 'folder_contents',
-                 'permissions': (ModifyPortalContent,)},
-                {'id': 'edit',
-                 'name': 'action_edit',
-                 'action': 'cpsdocument_edit_form',
-                 'permissions': (ModifyPortalContent,)},
-                {'id': 'metadata',
-                 'name': 'action_metadata',
-                 'action': 'cpsdocument_metadata',
-                 'condition': 'not:portal/portal_membership/isAnonymousUser',
-                 'permissions': (View,)},
-                {'id': 'localroles',
-                 'name': 'action_local_roles',
-                 'action': 'folder_localrole_form',
-                 'permissions': (ChangePermissions,)},
-                 )
+    'content_meta_type': 'Student',
+    'product': 'WAeUP',
+    'factory': 'addFaculty',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': ('Department'),
+    'allow_discussion': False,
+    'cps_is_searchable': True,
+    'cps_proxy_type': 'document',
+    'cps_display_as_document_in_listing': True,
+    'schemas': ['metadata','common','faculty'],
+    'layouts': ['waeup_common','faculty'],
+    'flexible_layouts': (),
+    'layout_clusters': ['metadata:metadata'],
+    'cps_section_wf': 'waeup_section_wf',
+    'use_content_status_history': 0,
+    'actions_add': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/faculty_index_html',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+          )
+}
+###)
+
+department_type = { ###(
+    'title': 'WAeUP Department',
+    'description': '',
+    'content_icon': 'student.gif',
+    'content_meta_type': 'Department',
+    'product': 'WAeUP',
+    'factory': 'addDepartment',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': ('Student','Course'),
+    'allow_discussion': False,
+    'cps_is_searchable': True,
+    'cps_proxy_type': 'document',
+    'cps_display_as_document_in_listing': True,
+    'schemas': ['metadata','common','department'],
+    'layouts': ['waeup_common','department'],
+    'flexible_layouts': (),
+    'layout_clusters': ['metadata:metadata'],
+    'cps_section_wf': 'waeup_section_wf',
+    'use_content_status_history': 0,
+    'actions_add': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/deparment_index_html',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+          )
+}
+###)
+
+course_type = { ###(
+    'title': 'WAeUP Course',
+    'description': '',
+    'content_icon': 'student.gif',
+    'content_meta_type': 'Course',
+    'product': 'WAeUP',
+    'factory': 'addCourse',
+    'immediate_view': 'cpsdocument_view',
+    'global_allow': True,
+    'filter_content_types': True,
+    'allowed_content_types': (),
+    'allow_discussion': False,
+    'cps_is_searchable': True,
+    'cps_proxy_type': 'document',
+    'cps_display_as_document_in_listing': True,
+    'schemas': ['metadata','common','student'],
+    'layouts': ['waeup_common','student'],
+    'flexible_layouts': (),
+    'layout_clusters': ['metadata:metadata'],
+    'cps_section_wf': 'waeup_section_wf',
+    'use_content_status_history': 0,
+    'actions_add': (
+         {'id': 'view',
+          'name': 'action_view',
+          'action': 'string:${object_url}/course_index_html',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+          )
 }
 ###)
@@ -310,4 +378,7 @@
 types['ScratchCard'] = scratch_card
 types['Jamb'] = jamb_type
+types['Faculty'] = faculty_type
+types['Department'] = department_type
+types['Course'] = course_type
 
 return types
Index: /waeup_product/trunk/skins/waeup_default/portlet_studentnavigation.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_default/portlet_studentnavigation.pt	(revision 67)
+++ /waeup_product/trunk/skins/waeup_default/portlet_studentnavigation.pt	(revision 68)
@@ -15,5 +15,4 @@
   </tal:block>
   <tal:block condition="anonymous">
-    <span> </span>
   </tal:block>
 </tal:block>
Index: /waeup_product/trunk/skins/waeup_student/admission_status.py
===================================================================
--- /waeup_product/trunk/skins/waeup_student/admission_status.py	(revision 68)
+++ /waeup_product/trunk/skins/waeup_student/admission_status.py	(revision 68)
@@ -0,0 +1,38 @@
+##parameters=
+# $Id$
+"""
+search for admitted students 
+return html renderer + psm
+"""
+##type_name = 'Jamb'
+##ti = context.portal_types[type_name]
+##
+##context.REQUEST.set('type_name',type_name)
+##
+##validate = REQUEST.has_key("cpsdocument_edit_button")
+
+request = context.REQUEST
+lt = context.portal_layouts
+catalog = context.portal_catalog
+
+rendered,psm,ds = lt.renderLayout(layout_id= 'admission_status',
+                      schema_id= 'jamb',
+                      context=context,
+                      mapping=request,
+                      ob={},
+                      layout_mode='create',
+                      )
+qs = ds.get('quick_search')
+list = []
+if qs or 1:
+    res = catalog(SearchableText = qs)
+    if res:
+        for i in res:
+            o = i.getObject()
+            if o.portal_type == 'Jamb':
+                list.append(o)
+return context.admission_status_form(rendered = rendered,
+                                 psm = '',
+                                 list = list,
+                                 ds = ds
+                                 )
Index: /waeup_product/trunk/skins/waeup_student/layout_admission_status_create.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_student/layout_admission_status_create.pt	(revision 68)
+++ /waeup_product/trunk/skins/waeup_student/layout_admission_status_create.pt	(revision 68)
@@ -0,0 +1,83 @@
+<tal:block define="global creation python:1" />
+<metal:block define-macro="default_edit"
+             tal:define="layout options/layout;
+             ds options/datastructure;
+             creation creation|nothing;
+             metadata metadata|nothing;
+             type_name request/type_name|nothing;
+             ti python:type_name and getattr(here.portal_types,type_name,None) or getattr(here.portal_types,here.portal_type,None);
+             creation_form python:ti and ti.getActionById('create', 'cpsdocument_create_form') or 'cpsdocument_create_form' ;
+             edit_form     python:ti and ti.getActionById('edit',   'cpsdocument_edit_form') or  'cpsdocument_edit_form';
+             metadata_form python:ti and ti.getActionById('metadata', 'cpsdocument_metadata') or 'cpsdocument_metadata';
+             formaction string:check_admission_form;
+             first_layout options/first_layout|python:0;
+             last_layout options/last_layout|python:0;
+             is_flexible options/is_flexible;
+             cpsmcat nocall:here/translation_service;
+             "
+             >
+  <form action='admission_status' method='post'
+        enctype='multipart/form-data' class='workflow'>
+    <div class='group'>
+      <div class='documentFields'>
+        <table width="100%" cellpadding="2" cellspacing="2" summary="Form layout">
+          <tr tal:repeat="row layout/rows" valign="top">
+            <td tal:repeat="cell row"
+                tal:attributes="colspan cell/ncols">
+              <tal:block define="widget cell/widget;
+              wid widget/getWidgetId;
+              dm options/datastructure/getDataModel;
+              err python:ds.getError(wid);
+              err_mapping python:ds.getErrorMapping(wid);
+              is_required widget/is_required|nothing;
+              tooltip_id python:wid + '_help';
+              widget_css_class cell/widget_css_class|nothing;
+              widget_css_class python:test(is_flexible, 'group', widget_css_class);
+              css_class python:test(err, 'row error',
+              test(is_flexible, 'group', 'row'))"
+              >
+                <div tal:attributes="class widget_css_class;
+                id python:widget.getHtmlWidgetId()+'_widget';"
+                >
+                  <div class="label" tal:condition="widget/label_edit"
+                       tal:attributes="class python:test(is_required, 'label required','label')">
+                    <label i18n:translate="" tal:condition="widget/is_i18n"
+                           tal:content="widget/label_edit"
+                           tal:attributes="for cell/widget_input_area_id|nothing;">label</label>
+                    <label tal:condition="not:widget/is_i18n"
+                           tal:content="widget/label_edit"
+                           tal:attributes="for cell/widget_input_area_id|nothing;">label</label>
+                  </div>
+                  <button type="button" class="tooltipControl"
+                          tal:condition="widget/help"
+                          tal:attributes="onclick python:'toggleElementVisibility(\'%s\')' % tooltip_id;"> ? </button>
+                  <div class="field">
+                    <div tal:replace="structure cell/widget_rendered"/>
+                  </div>
+                  <div class="tooltipArea" style="visibility: hidden;"
+                       tal:condition="widget/help"
+                       tal:attributes="id tooltip_id;
+                       onclick python:'showElement(false, \'%s\')' % tooltip_id;"
+                       >
+                    <tal:block i18n:translate="" tal:condition="widget/is_i18n"
+                               tal:content="widget/help">i18_key-help_for_this_field</tal:block>
+                    <tal:block tal:condition="not:widget/is_i18n"
+                               tal:content="widget/help">This is the help for this field</tal:block>
+                  </div>
+                  <tal:block condition="err">
+                    <tal:block define="msg python:cpsmcat(err, mapping=err_mapping)">
+                      <br /><em style="color: red"
+                                tal:content="msg">err</em>
+                    </tal:block>
+                  </tal:block>
+                </div>
+              </tal:block>
+            </td>
+          </tr>
+        </table>
+        <input type="submit" class="standalone" name="cpsdocument_edit_button" value="GO" />
+      </div>        
+    </div>
+  </form>
+</metal:block>
+  
Index: /waeup_product/trunk/skins/waeup_student/students_folder_view.py
===================================================================
--- /waeup_product/trunk/skins/waeup_student/students_folder_view.py	(revision 67)
+++ /waeup_product/trunk/skins/waeup_student/students_folder_view.py	(revision 68)
@@ -9,7 +9,7 @@
 member = context.portal_membership.getAuthenticatedMember()
 if member:
-    if 'Student' in member.getGroups():
+    if 'Students' in member.getGroups():
         return context.students_folder_view_students(psm=psm,groups=groups)
-    if 'StudentsManager' in member.getGroups():
+    if 'StudentManager' in member.getGroups():
         return context.students_folder_view_manager(psm=psm,groups=groups)
 return context.students_folder_view_anon(psm=psm,groups=groups)
Index: /waeup_product/trunk/skins/waeup_student/students_folder_view_anon.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_student/students_folder_view_anon.pt	(revision 67)
+++ /waeup_product/trunk/skins/waeup_student/students_folder_view_anon.pt	(revision 68)
@@ -17,23 +17,6 @@
                items here/contentValues"
                >
-    <span tal:condition="python: mtool.isAnonymousUser()"> 
-      Please login or <a href="" tal:attributes="href string:${context/absolute_url}/check_admission">check you Jambadmission</a>.
-    </span>
-    <span tal:condition="python: member and 'StudentManager' in member.getGroups()"> 
-      <table cellspacing="0" cellpadding="0">
-        <tal:block condition="python: len(items)">
-          <tr tal:repeat="item items">
-            <td colspan="1">
-              <a href="student" tal:attributes="href item/absolute_url" tal:content="item/title_or_id"></a>
-            </td>
-          </tr>
-        </tal:block>
-        <tr tal:condition="python:not len(items)">
-          <td>
-            no Students yet !
-          </td>
-        </tr>
-      </table>
-    </span>
+    <a href="" tal:attributes="href string:${context/absolute_url}/admission_status">Admission List UME</a>.<br />
+    <a href="" tal:attributes="href string:${context/absolute_url}/check_admission">Admission Request (JAMB) canditates only</a>.
   </metal:block>
   <metal:block fill-slot="sub">
