Index: main/waeup.aaue/trunk/src/waeup/aaue/interfaces.py
===================================================================
--- main/waeup.aaue/trunk/src/waeup/aaue/interfaces.py	(revision 14920)
+++ main/waeup.aaue/trunk/src/waeup/aaue/interfaces.py	(revision 14944)
@@ -269,4 +269,13 @@
         )
 
+    show_results = schema.List(
+        title = _(u'Show course results'),
+        value_type = schema.Choice(
+            source = EnableScoreEditingGroupSource(),
+            ),
+        required = False,
+        defaultFactory=list,
+        )
+
 
     def getSessionString():
Index: main/waeup.aaue/trunk/src/waeup/aaue/students/browser.py
===================================================================
--- main/waeup.aaue/trunk/src/waeup/aaue/students/browser.py	(revision 14920)
+++ main/waeup.aaue/trunk/src/waeup/aaue/students/browser.py	(revision 14944)
@@ -404,10 +404,14 @@
         isStudent = getattr(
             self.request.principal, 'user_type', None) == 'student'
-        # Temporarily disabled on 1/12/2016
-        if isStudent:
+        try:
+            show_results = grok.getSite()[
+                'configuration'][str(self.context.level_session)].show_results
+        except KeyError:
             return False
-        #if isStudent and self.context.student.state != RETURNING \
-        #    and self.context.student.current_level == self.context.level:
-        #    return False
+        if isStudent and self.context.student.current_mode not in show_results:
+            return False
+        if isStudent and self.context.student.state != RETURNING \
+            and self.context.student.current_level == self.context.level:
+            return False
         return True
 
@@ -447,10 +451,14 @@
         isStudent = getattr(
             self.request.principal, 'user_type', None) == 'student'
-        # Temporarily disabled on 1/12/2016
-        if isStudent:
+        try:
+            show_results = grok.getSite()[
+                'configuration'][str(self.context.level_session)].show_results
+        except KeyError:
             return False
-        #if isStudent and self.context.student.state != RETURNING \
-        #    and self.context.student.current_level == self.context.level:
-        #    return False
+        if isStudent and self.context.student.current_mode not in show_results:
+            return False
+        if isStudent and self.context.student.state != RETURNING \
+            and self.context.student.current_level == self.context.level:
+            return False
         return True
 
Index: main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py
===================================================================
--- main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py	(revision 14920)
+++ main/waeup.aaue/trunk/src/waeup/aaue/students/tests/test_browser.py	(revision 14944)
@@ -1042,4 +1042,24 @@
         return
 
+    def test_student_access_course_results(self):
+        IWorkflowState(self.student).setState('school fee paid')
+        self.student['studycourse'].entry_session = 2004
+        self.student['studycourse'].current_session = 2004
+        self.browser.open(self.login_path)
+        self.browser.getControl(name="form.login").value = self.student_id
+        self.browser.getControl(name="form.password").value = 'spwd'
+        self.browser.getControl("Login").click()
+        self.browser.getLink("Study Course").click()
+        self.browser.getLink("Add course list").click()
+        self.browser.getControl("Create course list now").click()
+        self.assertFalse('Score' in self.browser.contents)
+        IWorkflowState(self.student).setState('returning')
+        self.browser.open(self.studycourse_path + '/100')
+        self.assertFalse('Score' in self.browser.contents)
+        self.app['configuration']['2004'].show_results = ['ug_ft']
+        self.browser.open(self.studycourse_path + '/100')
+        self.assertTrue('Score' in self.browser.contents)
+        return
+
     def test_student_clearance(self):
         # Student cant login if their password is not set
