Index: main/waeup.uniben/trunk/src/waeup/uniben/students/browser.py
===================================================================
--- main/waeup.uniben/trunk/src/waeup/uniben/students/browser.py	(revision 13063)
+++ main/waeup.uniben/trunk/src/waeup/uniben/students/browser.py	(revision 13085)
@@ -46,5 +46,6 @@
     NigeriaExportPDFClearanceSlip,
     NigeriaStudentPersonalDisplayFormPage,
-    NigeriaStudentPersonalManageFormPage
+    NigeriaStudentPersonalManageFormPage,
+    NigeriaStudentPersonalEditFormPage
     )
 
@@ -56,5 +57,6 @@
     ICustomUGStudentClearance,
     ICustomPGStudentClearance,
-    ICustomStudentPersonal)
+    ICustomStudentPersonal,
+    ICustomStudentPersonalEdit)
 from waeup.uniben.interfaces import MessageFactory as _
 
@@ -229,4 +231,10 @@
     form_fields[
         'personal_updated'].custom_widget = FriendlyDatetimeDisplayWidget('le')
+
+class CstomStudentPersonalEditFormPage(NigeriaStudentPersonalEditFormPage):
+    """ Page to edit personal data
+    """
+    form_fields = grok.AutoFields(
+        ICustomStudentPersonalEdit).omit('personal_updated')
 
 class StudyCourseCOEditFormPage(KofaEditFormPage):
Index: main/waeup.uniben/trunk/src/waeup/uniben/students/interfaces.py
===================================================================
--- main/waeup.uniben/trunk/src/waeup/uniben/students/interfaces.py	(revision 13063)
+++ main/waeup.uniben/trunk/src/waeup/uniben/students/interfaces.py	(revision 13085)
@@ -21,5 +21,6 @@
 from kofacustom.nigeria.students.interfaces import (
     INigeriaStudentBase, INigeriaUGStudentClearance, INigeriaPGStudentClearance,
-    INigeriaStudentPersonal, INigeriaStudentStudyLevel,
+    INigeriaStudentPersonal, INigeriaStudentPersonalEdit,
+    INigeriaStudentStudyLevel,
     INigeriaStudentStudyCourse, INigeriaCourseTicket,
     INigeriaStudentUpdateByRegNo, INigeriaStudentUpdateByMatricNo,
@@ -30,10 +31,18 @@
 class ICustomStudentBase(INigeriaStudentBase):
     """Representation of student base data.
-
     """
 
 class ICustomStudentPersonal(INigeriaStudentPersonal):
     """Student personal data.
+    """
 
+    parent_email = schema.ASCIILine(
+        title = _(u'Parent Email'),
+        required = False,
+        constraint=validate_email,
+        )
+
+class ICustomStudentPersonalEdit(INigeriaStudentPersonalEdit):
+    """Interface for editing personal data by students.
     """
 
@@ -46,27 +55,21 @@
 class ICustomUGStudentClearance(INigeriaUGStudentClearance):
     """Representation of ug student clearance data.
-
     """
 
 class ICustomPGStudentClearance(INigeriaPGStudentClearance):
     """Representation of pg student clearance data.
-
     """
-
 
 class ICustomStudent(ICustomStudentBase, ICustomUGStudentClearance,
     ICustomPGStudentClearance, ICustomStudentPersonal):
     """Representation of a student.
-
     """
 
 class ICustomStudentStudyCourse(INigeriaStudentStudyCourse):
     """A container for student study levels.
-
     """
 
 class ICustomStudentStudyLevel(INigeriaStudentStudyLevel):
     """A container for course tickets.
-
     """
 
@@ -94,14 +97,11 @@
 class ICustomCourseTicket(INigeriaCourseTicket):
     """A course ticket.
-
     """
 
 class ICustomStudentUpdateByRegNo(INigeriaStudentUpdateByRegNo):
     """Representation of a student. Skip regular reg_number validation.
-
     """
 
 class ICustomStudentUpdateByMatricNo(INigeriaStudentUpdateByMatricNo):
     """Representation of a student. Skip regular matric_number validation.
-
     """
Index: main/waeup.uniben/trunk/src/waeup/uniben/students/student.py
===================================================================
--- main/waeup.uniben/trunk/src/waeup/uniben/students/student.py	(revision 13063)
+++ main/waeup.uniben/trunk/src/waeup/uniben/students/student.py	(revision 13085)
@@ -26,5 +26,6 @@
 from waeup.kofa.utils.helpers import get_current_principal
 from kofacustom.nigeria.students.student import NigeriaStudent
-from waeup.uniben.students.interfaces import ICustomStudent
+from waeup.uniben.students.interfaces import (
+    ICustomStudent, ICustomStudentPersonalEdit)
 
 
@@ -33,5 +34,6 @@
     owned by students.
     """
-    grok.implements(ICustomStudent, IStudentNavigation)
+    grok.implements(
+        ICustomStudent, IStudentNavigation, ICustomStudentPersonalEdit)
     grok.provides(ICustomStudent)
 
Index: main/waeup.uniben/trunk/src/waeup/uniben/students/tests/test_browser.py
===================================================================
--- main/waeup.uniben/trunk/src/waeup/uniben/students/tests/test_browser.py	(revision 13063)
+++ main/waeup.uniben/trunk/src/waeup/uniben/students/tests/test_browser.py	(revision 13085)
@@ -195,4 +195,7 @@
         open(path, 'wb').write(self.browser.contents)
         print "Sample PDF clearance_invitation_slip.pdf written to %s" % path
+        # Students can open the personal edit page and see the parent_email field.
+        self.browser.open(self.student_path + '/edit_personal')
+        self.assertTrue('parent_email' in self.browser.contents)
 
     def test_manage_payments(self):
