Changeset 18101


Ignore:
Timestamp:
30 Jun 2025, 11:56:08 (5 hours ago)
Author:
Henrik Bettermann
Message:

Enable transcripts.

Location:
main/waeup.uniben/trunk/src/waeup/uniben/students
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.uniben/trunk/src/waeup/uniben/students/browser.py

    r18093 r18101  
    792792    """ Page to display the student's transcript.
    793793    """
    794 #    grok.require('waeup.viewStudent')
     794    grok.require('waeup.viewStudent')
    795795
    796796class CustomExportPDFTranscriptSlip(ExportPDFTranscriptSlip):
    797797    """Deliver a PDF slip of the context.
    798798    """
    799 #    grok.require('waeup.viewStudent')
     799    grok.require('waeup.viewStudent')
    800800
    801801    def _sigsInFooter(self):
  • main/waeup.uniben/trunk/src/waeup/uniben/students/student.py

    r17822 r18101  
    2121import grok
    2222from zope.interface import implementedBy
     23from zope.component import getUtility
    2324from waeup.kofa.interfaces import (
    2425    CLEARANCE, REQUESTED, GRADUATED, TRANSREL, TRANSVAL)
    2526from waeup.kofa.utils.helpers import attrs_to_fields
    2627from waeup.kofa.students.student import StudentFactory
    27 from waeup.kofa.students.interfaces import IStudentNavigation
     28from waeup.kofa.students.interfaces import IStudentNavigation, IStudentsUtils
    2829from waeup.kofa.utils.helpers import get_current_principal
    2930from kofacustom.nigeria.students.student import NigeriaStudent
     
    4445    @property
    4546    def transcript_enabled(self):
    46         return True
    4747        #user = get_current_principal()
    4848        #if user.id in ('admin', 'isouaba', 'med', 'zope.mgr'):
    4949        #    return True
    50         #return False
     50        final_clearance_enabled = getUtility(
     51            IStudentsUtils).final_clearance_enabled(self)
     52        if not final_clearance_enabled:
     53            return False
     54        if self.current_mode != 'ug_ft':
     55            return False
     56        if self.faccode in ('EDU', 'MED', 'DEN'):
     57            return False
     58        return True
    5159
    5260    @property
  • main/waeup.uniben/trunk/src/waeup/uniben/students/tests/test_browser.py

    r18100 r18101  
    10751075        self.browser.getControl(name="form.password").value = 'spwd'
    10761076        self.browser.getControl("Login").click()
     1077
    10771078        # Students can't open the pdf transcript ...
     1079        #transcript_path = self.student_path + '/studycourse/transcript'
     1080        #self.assertRaises(
     1081        #    Unauthorized, self.browser.open, transcript_path)
     1082        # ... but managers can
     1083        #self.browser.open(self.student_path)
     1084        #self.browser.getLink("Logout").click()
     1085        #self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
     1086        #self.browser.open(transcript_path)
     1087        #self.assertEqual(self.browser.headers['Status'], '200 Ok')
     1088        #self.assertTrue('Transcript' in self.browser.contents)
     1089        #self.browser.open(self.student_path + '/studycourse/transcript.pdf')
     1090        #self.assertEqual(self.browser.headers['Status'], '200 Ok')
     1091        #self.assertEqual(self.browser.headers['Content-Type'], 'application/pdf')
     1092        #path = os.path.join(samples_dir(), 'transcript.pdf')
     1093        #open(path, 'wb').write(self.browser.contents)
     1094        #print "Sample PDF transcript.pdf written to %s" % path
     1095
     1096        # Students and officers can open the pdf transcript ...
     1097        self.student['studycourse'].current_level = 500
    10781098        transcript_path = self.student_path + '/studycourse/transcript'
    1079         self.assertRaises(
    1080             Unauthorized, self.browser.open, transcript_path)
    1081         # ... but managers can
    1082         self.browser.open(self.student_path)
    1083         self.browser.getLink("Logout").click()
    1084         self.browser.addHeader('Authorization', 'Basic mgr:mgrpw')
    10851099        self.browser.open(transcript_path)
    10861100        self.assertEqual(self.browser.headers['Status'], '200 Ok')
Note: See TracChangeset for help on using the changeset viewer.