Ignore:
Timestamp:
26 Jun 2012, 07:17:19 (12 years ago)
Author:
Henrik Bettermann
Message:

Provide reduced result slip. The attribute result_uploaded must be set True by import. Then the result download button shows up and the application slip is abridged.

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

Legend:

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

    r8760 r8803  
    3333    ApplicantBaseDisplayFormPage)
    3434from waeup.kofa.applicants.viewlets import (
    35     PaymentReceiptActionButton)
     35    PaymentReceiptActionButton, PDFActionButton)
    3636from waeup.kofa.applicants.pdf import PDFApplicationSlip
    3737from waeup.uniben.applicants.interfaces import (
     
    4141    UG_OMIT_PDF_FIELDS, PG_OMIT_PDF_FIELDS,
    4242    UG_OMIT_MANAGE_FIELDS, PG_OMIT_MANAGE_FIELDS,
    43     UG_OMIT_EDIT_FIELDS, PG_OMIT_EDIT_FIELDS, PUTME_OMIT_EDIT_FIELDS)
     43    UG_OMIT_EDIT_FIELDS, PG_OMIT_EDIT_FIELDS, PUTME_OMIT_EDIT_FIELDS,
     44    UG_OMIT_RESULT_SLIP_FIELDS)
    4445from waeup.uniben.interfaces import MessageFactory as _
    4546
     
    6364    grok.context(ICustomApplicantOnlinePayment)
    6465
     66class PDFActionButton(PDFActionButton):
     67
     68    @property
     69    def text(self):
     70        if getattr(self.context, 'result_uploaded', False):
     71            return _('Download result slip')
     72        return _('Download application slip')
     73
     74
    6575class CustomPDFApplicationSlip(PDFApplicationSlip):
    6676
     77    def _reduced_slip(self):
     78        return getattr(self.context, 'result_uploaded', False)
     79
    6780    @property
    6881    def note(self):
    6982        target = getattr(self.context.__parent__, 'prefix', None)
    70         if target is not None and not target.startswith('pg'):
     83        if target is not None and not target.startswith('pg') \
     84            and not self._reduced_slip():
    7185            return _(u'<br /><br /><br />'
    7286                      'Comfirm your exam venue 72 hours to the exam.')
     
    8296        else:
    8397            form_fields = grok.AutoFields(IUGApplicant)
    84             for field in UG_OMIT_PDF_FIELDS:
    85                 form_fields = form_fields.omit(field)
     98            if self._reduced_slip():
     99                for field in UG_OMIT_RESULT_SLIP_FIELDS:
     100                    form_fields = form_fields.omit(field)
     101            else:
     102                for field in UG_OMIT_PDF_FIELDS:
     103                    form_fields = form_fields.omit(field)
     104        if not getattr(self.context, 'student_id'):
     105            form_fields = form_fields.omit('student_id')
    86106        return form_fields
    87107
  • main/waeup.uniben/trunk/src/waeup/uniben/applicants/interfaces.py

    r8743 r8803  
    3434from waeup.uniben.payments.interfaces import ICustomOnlinePayment
    3535
    36 UG_OMIT_DISPLAY_FIELDS = ('locked', 'course_admitted', 'password')
     36UG_OMIT_DISPLAY_FIELDS = ('locked', 'course_admitted',
     37    'password', 'result_uploaded')
    3738UG_OMIT_PDF_FIELDS = UG_OMIT_DISPLAY_FIELDS + ('email', 'phone')
    3839UG_OMIT_MANAGE_FIELDS = ()
    3940UG_OMIT_EDIT_FIELDS = UG_OMIT_MANAGE_FIELDS + ('locked', 'course_admitted',
    4041    'student_id', 'screening_score', 'screening_venue', 'notice',
    41     'screening_date')
     42    'screening_date', 'result_uploaded')
    4243PUTME_OMIT_EDIT_FIELDS = UG_OMIT_EDIT_FIELDS + (
    4344    'firstname', 'middlename', 'lastname', 'sex',
    4445    'course1', 'lga', 'jamb_score', 'jamb_subjects')
     46UG_OMIT_RESULT_SLIP_FIELDS = UG_OMIT_DISPLAY_FIELDS + ('email', 'phone',
     47    'date_of_birth', 'sex',
     48    'nationality', 'lga', 'perm_address', 'course2', 'screening_venue',
     49    'screening_date')
    4550
    4651PG_OMIT_DISPLAY_FIELDS = ('locked', 'course_admitted', 'password')
     
    105110        )
    106111    screening_score = schema.Int(
    107         title = _(u'Screening Score'),
    108         required = False,
     112        title = _(u'Screening Score (%)'),
     113        required = False,
     114        )
     115    aggregate = schema.Int(
     116        title = _(u'Aggregate Score (%)'),
     117        description = _(u'(average of relative JAMB and PUTME scores)'),
     118        required = False,
     119        )
     120    result_uploaded = schema.Bool(
     121        title = _(u'Result uploaded'),
     122        default = False,
    109123        )
    110124    student_id = schema.TextLine(
  • main/waeup.uniben/trunk/src/waeup/uniben/students/interfaces.py

    r8582 r8803  
    3333from waeup.uniben.interfaces import MessageFactory as _
    3434from waeup.uniben.payments.interfaces import ICustomOnlinePayment
    35 from waeup.uniben.utils.lgas import LGAS
    3635
    3736
Note: See TracChangeset for help on using the changeset viewer.