Index: /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py
===================================================================
--- /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py	(revision 75)
+++ /waeup_product/trunk/skins/waeup_default/getWAeUPLayouts.py	(revision 76)
@@ -202,96 +202,96 @@
 ###)
 
+firstname = { ###(
+            'type': 'String Widget',
+            'data': {
+                'title': 'First Name',
+                'fields': ('firstname',),
+                'is_required': False,
+                'label': 'first name',
+                'label_edit': 'first name',
+                'description': 'First Name',
+                'help': 'First name',
+                'is_i18n': False,
+                'display_width': 40,
+                },
+            }
+middlename = {
+            'type': 'String Widget',
+            'data': {
+                'title': '',
+                'fields': ('middlename',),
+                'is_required': False,
+                'label': 'middle name',
+                'label_edit': 'middle name',
+                'description': '',
+                'help': 'middle name',
+                'is_i18n': False,
+                'readonly_layout_modes': (),
+                'hidden_layout_modes': (),
+                'hidden_readonly_layout_modes': (),
+                'hidden_empty': True,
+                'hidden_if_expr': '',
+                'css_class': '',
+                'widget_mode_expr': '',
+                'display_width': 40,
+                'size_max': 0,
+                },
+            }
+
+lastname = {
+            'type': 'String Widget',
+            'data': {
+                'title': '',
+                'fields': ('lastname',),
+                'is_required': False,
+                'label': 'surname',
+                'label_edit': 'surname',
+                'description': '',
+                'help': 'Surname',
+                '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': 40,
+                'size_max': 0,
+            },
+        }
+sex = {
+            'type': 'Boolean Widget',
+            'data': {
+                'title': '',
+                'fields': ('sex',),
+                'is_required': False,
+                'label': 'sex',
+                'label_edit': 'sex',
+                'label_false': 'male',
+                'label_true': 'female',
+                'description': '',
+                'help': '',
+                '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': 20,
+                'size_max': 0,
+            }
+        }
+            
+###)
+
 student_personal_layout = { ###(
     'widgets': {
-        'firstname': {
-            'type': 'String Widget',
-            'data': {
-                'title': '',
-                'fields': ('firstname',),
-                'is_required': False,
-                'label': 'First Name',
-                'label_edit': 'First Name',
-                'description': '',
-                'help': '',
-                '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': 0,
-            },
-        },
-        'middlename': {
-            'type': 'String Widget',
-            'data': {
-                'title': '',
-                'fields': ('middlename',),
-                'is_required': False,
-                'label': 'Middle Name',
-                'label_edit': 'Middle Name',
-                'description': '',
-                'help': '',
-                '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': 0,
-            },
-        },
-        'lastname': {
-            'type': 'String Widget',
-            'data': {
-                'title': '',
-                'fields': ('lastname',),
-                'is_required': False,
-                'label': 'Last Name',
-                'label_edit': 'Last Name',
-                'description': '',
-                'help': '',
-                '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': 0,
-            },
-        },
-        'sex': {
-            'type': 'Boolean Widget',
-            'data': {
-                'title': '',
-                'fields': ('sex',),
-                'is_required': False,
-                'label': 'Sex',
-                'label_edit': 'Sex',
-                'label_false': 'male',
-                'label_true': 'female',
-                'description': '',
-                'help': '',
-                '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': 0,
-            },
-        },
+        'firstname': firstname,
+        'middlename': middlename,
+        'lastname': lastname,
+        'sex': sex,
         'birthday': {
             'type': 'Date Widget',
@@ -318,5 +318,5 @@
     },
     'layout': {
-        'style_prefix': 'layout_default_',
+        'style_prefix': 'layout_personal_',
         'flexible_widgets': (),
         'ncols': 1,
@@ -392,5 +392,5 @@
 ###)
 
-jamb_id = {
+jamb_id = { ###(
            'type': 'StudentId Widget',
            'data': {
@@ -414,4 +414,6 @@
                  },
            }
+
+###)
 
 admission = { ###(
@@ -517,9 +519,9 @@
             'type': 'StudentId Widget',
             'data': {
-                'title': 'Student ID',
+                'title': 'registration nr',
                 'fields': ('reg_nr',),
                 'is_required': True,
-                'label': 'Student ID',
-                'label_edit': 'Student ID',
+                'label': 'registration nr',
+                'label_edit': 'registration nr',
                 'description': 'The Student ID from JAMB',
                 'help': 'The Student ID from JAMB',
@@ -529,62 +531,7 @@
             },
         },
-        'firstname': {
-            'type': 'String Widget',
-            'data': {
-                'title': 'First Name',
-                'fields': ('firstname',),
-                'is_required': False,
-                'label': 'First Name',
-                'label_edit': 'First Name',
-                'description': 'First Name',
-                'help': 'First name',
-                'is_i18n': False,
-                'display_width': 40,
-            },
-        },
-        'middlename': {
-            'type': 'String Widget',
-            'data': {
-                'title': '',
-                'fields': ('middlename',),
-                'is_required': False,
-                'label': 'Middle Name',
-                'label_edit': 'Middle Name',
-                'description': '',
-                'help': 'Middle name',
-                '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': 40,
-                'size_max': 0,
-            },
-        },
-        'lastname': {
-            'type': 'String Widget',
-            'data': {
-                'title': '',
-                'fields': ('lastname',),
-                'is_required': False,
-                'label': 'Surname',
-                'label_edit': 'Surname',
-                'description': '',
-                'help': 'Surname',
-                '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': 40,
-                'size_max': 0,
-            },
-        },
+        'firstname': firstname,
+        'middlename': middlename,
+        'lastname': lastname,
         'age': {
             'type': 'Int Widget',
@@ -609,28 +556,5 @@
             },
         },
-        'sex': {
-            'type': 'Boolean Widget',
-            'data': {
-                'title': '',
-                'fields': ('sex',),
-                'is_required': False,
-                'label': 'sex',
-                'label_edit': 'sex',
-                'label_false': 'male',
-                'label_true': 'female',
-                'description': '',
-                'help': '',
-                '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': 20,
-                'size_max': 0,
-            },
-        },
+        'sex': sex,
         'state': {
             'type': 'Select Widget',
@@ -639,6 +563,6 @@
                 'fields': ('state',),
                 'is_required': False,
-                'label': 'State',
-                'label_edit': 'State',
+                'label': 'state of origin',
+                'label_edit': 'state of origin',
                 'description': '',
                 'help': '',
@@ -688,6 +612,6 @@
                 'fields': ('faculty',),
                 'is_required': False,
-                'label': 'Faculty',
-                'label_edit': 'Faculty',
+                'label': 'faculty',
+                'label_edit': 'faculty',
                 'description': '',
                 'help': '',
@@ -793,6 +717,6 @@
                 'fields': ('admission_sc_pin',),
                 'is_required': False,
-                'label': 'Scratch card PIN used',
-                'label_edit': 'Scratch card PIN used',
+                'label': 'pin card code',
+                'label_edit': 'pin card code',
                 'description': '',
                 'help': '',
@@ -842,5 +766,5 @@
     'widgets': jamb_widgets,
     'layout': {
-        'style_prefix': 'layout_default_',
+        'style_prefix': 'layout_waeup_',
         'flexible_widgets': (),
         'ncols': 1,
@@ -851,5 +775,5 @@
             [{'widget_id': 'lastname', 'ncols': 1},],
             #[{'widget_id': 'sc_id', 'ncols': 1},],
-            #[{'widget_id': 'sc_pin', 'ncols': 1},],
+            [{'widget_id': 'sc_pin', 'ncols': 1},],
             [{'widget_id': 'age', 'ncols': 1},],
             [{'widget_id': 'sex', 'ncols': 1},],
Index: /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py
===================================================================
--- /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py	(revision 75)
+++ /waeup_product/trunk/skins/waeup_default/getWAeUPTypes.py	(revision 76)
@@ -261,6 +261,13 @@
          {'id': 'view',
           'name': 'action_view',
-          'action': 'string:${object_url}/jamb_index_html',
+          'action': 'string:${object_url}/student_personal_index_html',
           #'action': 'string:${object_url}/cpsdocument_view',
+          'condition': '',
+          'permission': ('View',),
+          'category': 'object',
+          'visible': True,},
+         {'id': 'edit',
+          'name': 'action_edit',
+          'action': 'string:${object_url}/student_personal_edit_form',
           'condition': '',
           'permission': ('View',),
Index: /waeup_product/trunk/skins/waeup_default/layout_waeup_view.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_default/layout_waeup_view.pt	(revision 76)
+++ /waeup_product/trunk/skins/waeup_default/layout_waeup_view.pt	(revision 76)
@@ -0,0 +1,1 @@
+<metal:block use-macro="here/waeup_layout_lib/macros/table_view" />
Index: /waeup_product/trunk/skins/waeup_default/waeup_layout_lib.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_default/waeup_layout_lib.pt	(revision 76)
+++ /waeup_product/trunk/skins/waeup_default/waeup_layout_lib.pt	(revision 76)
@@ -0,0 +1,205 @@
+<!-- WAeUP layout_lib  -->
+<!-- $Id: layout_lib_div_view.pt 24721 2005-07-08 13:04:38Z dwyart $ -->
+
+<!-- div_view  -->
+
+<metal:block define-macro="div_view"
+             tal:define="layout options/layout">
+  <tal:block repeat="row layout/rows">
+    <tal:block repeat="cell row">
+      <tal:block define="widget cell/widget">
+        <div tal:define="dm options/datastructure/getDataModel;"
+             tal:attributes="class cell/widget_css_class|nothing;
+             id python:widget.getHtmlWidgetId()+'_widget';"
+             >
+          <tal:block condition="widget/label">
+            <span class="dlabel" i18n:translate="" tal:condition="widget/is_i18n"
+                  tal:content="widget/label">label</span>
+            <span class="dlabel" tal:condition="not:widget/is_i18n"
+                  tal:content="widget/label">label</span>
+          </tal:block>
+          <tal:block replace="structure cell/widget_rendered" />
+        </div>
+      </tal:block>
+    </tal:block>
+  </tal:block>
+</metal:block>
+
+<!-- table view -->
+<metal:block define-macro="table_view"
+             tal:define="layout options/layout">
+  <table>
+    <tal:block repeat="row layout/rows">
+      <tr>
+        <tal:block repeat="cell row">
+          <tal:block define="widget cell/widget">
+            <div tal:omit-tag=""
+                 tal:define="dm options/datastructure/getDataModel;"
+                 tal:attributes="class cell/widget_css_class|nothing;
+                 id python:widget.getHtmlWidgetId()+'_widget';" 
+                 >
+              <tal:block condition="widget/label">
+                <td class="dlabel" i18n:translate="" tal:condition="widget/is_i18n"
+                    tal:content="widget/label">label</td>
+                <td class="dlabel" tal:condition="not:widget/is_i18n"
+                    tal:content="widget/label">label</td>
+              </tal:block>
+              <td tal:content="structure cell/widget_rendered"></td>
+            </div>
+          </tal:block>
+        </tal:block>
+      </tr>
+    </tal:block>
+  </table>
+</metal:block>
+
+<!-- default edit  -->
+
+<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 python: test(creation, creation_form,
+                                 test(metadata, metadata_form,
+                                                edit_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;
+              ">
+<tal:block condition="first_layout">
+  <tal:block
+  content="structure string:<form action='${formaction}' method='post'
+  enctype='multipart/form-data' class='workflow'>
+  <div class='group'><div class='documentFields'>" />
+  <input type="hidden" name="type_name" value="."
+    tal:condition="creation" tal:attributes="value request/type_name" />
+</tal:block>
+
+<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 style="float: right;" tal:condition="is_flexible">
+            <input type="submit" value="button_move_up"
+              tal:condition="not:repeat/row/start"
+              tal:attributes="name string:uprow_${repeat/row/index}"
+              class="context moveUp" i18n:attributes="value" />
+            <input type="submit" value="button_move_down"
+              tal:condition="not:repeat/row/end"
+              tal:attributes="name string:downrow_${repeat/row/index}"
+              class="context moveDown" i18n:attributes="value" />
+            <input type="submit" value="button_delete"
+              class="destructive" i18n:attributes="value"
+              tal:attributes="name string:deleterow_${repeat/row/index};
+                              onclick python:'return window.confirm(\'%s\')' %
+                                (cpsmcat('description_confirm_delete'), )" />
+          </div>
+        </div>
+      </tal:block>
+    </td>
+  </tr>
+</table>
+
+<tal:block condition="is_flexible">
+<div style="float: right;"
+    tal:define="flexible_widgets options/flexible_widgets">
+  <input type="hidden" name="layout_id" value="."
+    tal:attributes="value layout/layout_id" />
+  <tal:select condition="python:len(flexible_widgets)>1">
+    <select name="widget_type">
+      <tal:block repeat="widget options/flexible_widgets">
+      <option value="."
+        tal:condition="widget/is_i18n"
+        i18n:translate=""
+        tal:attributes="value widget/getWidgetId"
+        tal:content="widget/title_or_id">Type</option>
+      <option value="."
+        tal:condition="not:widget/is_i18n"
+        tal:attributes="value widget/getWidgetId"
+        tal:content="widget/title_or_id">Type</option>
+      </tal:block>
+    </select>
+    <input type="submit" name="addwidget_button" value="button_add"
+     class="context"
+     i18n:attributes="value" />
+  </tal:select>
+  <tal:button condition="python:len(flexible_widgets) == 1">
+    <tal:block define="widget python:flexible_widgets[0]">
+      <input type="hidden" name="widget_type"
+        tal:attributes="value widget/getWidgetId">
+      <input type="submit" name="addwidget_button"
+        tal:define="button_add python:cpsmcat('button_add');
+          widget_title python:cpsmcat(widget.title_or_id())"
+        tal:attributes="value string:${button_add} ${widget_title}"
+        class="context" />
+    </tal:block>
+  </tal:button>
+</div>
+</tal:block>
+
+<tal:block condition="last_layout">
+  <tal:block content="structure string:</div>" />
+  <metal:block define-slot="additional_content" />
+
+  <input type="submit" class="standalone" name="cpsdocument_edit_button"
+    value="button_change" i18n:attributes="value"
+    tal:condition="not:creation" />
+  <input type="submit" class="standalone" name="cpsdocument_create_button"
+    value="button_create" i18n:attributes="value" tal:condition="creation" />
+  <tal:block content="structure string:</div></form>" />
+</tal:block>
+
+</metal:block>
+    
Index: /waeup_product/trunk/skins/waeup_student/student_personal_edit_form.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_student/student_personal_edit_form.pt	(revision 76)
+++ /waeup_product/trunk/skins/waeup_student/student_personal_edit_form.pt	(revision 76)
@@ -0,0 +1,69 @@
+<tal:block define="res python:here.editCPSDocument(REQUEST=request);
+                   rendered_main python: res[0];
+                   portal_status_message python: res[1];
+                   edition python:1;
+  ">
+<metal:block define-macro="edit_form">
+<metal:block use-macro="here/content_lib_master/macros/master">
+  <metal:block fill-slot="css_slot">
+    <link rel="Stylesheet" type="text/css" href=""
+      tal:attributes="href string:${base_url}document.css" />
+
+    <metal:block define-macro="widgets_javascript">
+    <!-- XXX this has to move to CPSSchemas -->
+    <style type="text/css"
+      tal:content="string:@import url(${base_url}calendar-win2k-1.css);"></style>
+    <script type="text/javascript" src="calendar.js"
+      tal:attributes="src string:${base_url}calendar.js"></script>
+    <script type="text/javascript" src="lang/calendar-en.js"
+      tal:define="local cpsmcat/getSelectedLanguage"
+      tal:attributes="src string:${base_url}lang/calendar-${local}.js"></script>
+    <script type="text/javascript" src="calendar-setup.js"
+      tal:attributes="src string:${base_url}calendar-setup.js"></script>
+
+    <script type="text/javascript">
+    <!--
+     function popup_rte(input_id, label_edit) {
+       var args, value
+       value = document.getElementById(input_id).value;
+       args='?input_id='+input_id+'&label_edit='+escape(label_edit);
+       popup = window.open('popup_rte_form'+args, input_id, 'toolbar=0, scrollbars=0, location=0, statusbar=0, menubar=0, resizable=1, dependent=1, width=640, height=480')
+       if(!popup.opener)
+         popup.opener = window;
+       return false;
+   }
+   //-->
+   </script>
+   </metal:block>
+  </metal:block>
+
+  <metal:block fill-slot="header"
+    tal:define="creation creation|nothing;
+                edition edition|nothing;
+                metadata metadata|nothing">
+    <h1 tal:condition="creation" i18n:translate="">
+      Create a document of type
+      <tal:block i18n:name="type_name" i18n:translate=""
+            tal:define="type_name request/type_name;
+                        type_info python:here.portal_types[type_name]"
+            tal:content="type_info/Title">Type Title</tal:block>
+    </h1>
+    <h1 tal:condition="not:creation">
+      <img tal:replace="structure python:here.getImgTag('/'+here.getIcon(), base_url='')">
+      <tal:block condition="edition"
+        i18n:translate="">Edit <span i18n:name="title"
+        tal:content="here/title_or_id">Page Title</span></tal:block>
+      <tal:block tal:condition="metadata"
+        i18n:translate="">heading_metadata_edit</tal:block>
+    </h1>
+  </metal:block>
+
+  <metal:block fill-slot="main">
+    <div tal:replace="structure rendered_main" />
+  </metal:block>
+  <metal:block fill-slot="sub">
+  </metal:block>
+
+</metal:block>
+</metal:block>
+</tal:block>
Index: /waeup_product/trunk/skins/waeup_student/student_personal_view_student.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_student/student_personal_view_student.pt	(revision 75)
+++ /waeup_product/trunk/skins/waeup_student/student_personal_view_student.pt	(revision 76)
@@ -1,30 +1,22 @@
 <metal:block define-macro="view">
-<metal:block use-macro="here/content_lib_master/macros/master">
-  <metal:block fill-slot="header">
-  </metal:block>
+  <metal:block use-macro="here/content_lib_master/macros/master">
+    <metal:block fill-slot="header">
+    </metal:block>
 
-  <metal:block fill-slot="css_slot">
-    <link rel="Stylesheet" type="text/css" href=""
-      tal:attributes="href string:${base_url}document.css" />
-    <link rel="Stylesheet" type="text/css" href=""
-      tal:attributes="href string:${base_url}forum.css" />
-  </metal:block>
-
-  <metal:block fill-slot="main">
-    <tal:block tal:content="structure rendered_main|python:doc.render(proxy=here)" />
-
-    <tal:block tal:condition="python:hasattr(here,'portal_discussion') and
-      hasattr(here.portal_discussion, 'isCommentingAllowedFor')">
-      <tal:block tal:define="comments_allowed
-        python:here.portal_discussion.isCommentingAllowedFor(here);"
-        tal:condition="comments_allowed">
-        <metal:block
-          use-macro="here/forum_comment_lib_view_comments_inline/macros/view_comments_inline" />
-      </tal:block>
-    </tal:block>
-
-  </metal:block>
-  <metal:block fill-slot="sub">
-  </metal:block>
+    <metal:block fill-slot="css_slot">
+      <link rel="Stylesheet" type="text/css" href=""
+            tal:attributes="href string:${base_url}document.css" />
+      <link rel="Stylesheet" type="text/css" href=""
+            tal:attributes="href string:${base_url}forum.css" />
+    </metal:block>
+    
+    <metal:block fill-slot="main">
+      <tal:block tal:content="structure rendered_main|python:doc.render(proxy=here)" />
+      <p>
+        <a href="" tal:attributes="href string:${context/absolute_url}/student_personal_edit_form">edit</a>
+      </p>
+    </metal:block>
+    <metal:block fill-slot="sub">
+    </metal:block>
 
 </metal:block>
Index: /waeup_product/trunk/skins/waeup_student/student_view_student.pt
===================================================================
--- /waeup_product/trunk/skins/waeup_student/student_view_student.pt	(revision 75)
+++ /waeup_product/trunk/skins/waeup_student/student_view_student.pt	(revision 76)
@@ -16,6 +16,6 @@
                items here/contentValues"
                >
+    <tal:block condition="python:0 and len(items)">
     <table cellspacing="0" cellpadding="0">
-      <tal:block condition="python: len(items)">
         <tr tal:repeat="item items">
           <td colspan="1"> 
@@ -25,11 +25,10 @@
           </td>
         </tr>
-      </tal:block>
-      <tr tal:condition="python:not len(items)">
-        <td>
-          no Items yet !
-        </td>
-      </tr>
     </table>
+    </tal:block>
+    <ul>
+      <li>  <a href="" tal:attributes="href string:${context/absolute_url}/JAMB">Clearence Form Processing</a></li>
+      <li>  <a href="" tal:attributes="href string:${context/absolute_url}/PERSONAL">Personal Data Form</a></li>
+    </ul>
   </metal:block>
   <metal:block fill-slot="sub">
