Changeset 12885 for main/kofacustom.wdu/trunk/src/kofacustom
- Timestamp:
- 26 Apr 2015, 08:59:40 (10 years ago)
- Location:
- main/kofacustom.wdu/trunk/src/kofacustom/wdu/applicants
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
main/kofacustom.wdu/trunk/src/kofacustom/wdu/applicants/browser.py
r11940 r12885 19 19 """ 20 20 import grok 21 from waeup.kofa.applicants.browser import ( 22 ApplicantRegistrationPage, ApplicantsContainerPage) 21 from zope.component import getUtility 22 from zope.i18n import translate 23 from waeup.kofa.widgets.datewidget import FriendlyDatetimeDisplayWidget 24 from zope.formlib.textwidgets import BytesDisplayWidget 25 from waeup.kofa.students.interfaces import IStudentsUtils 23 26 from kofacustom.nigeria.applicants.browser import ( 24 27 NigeriaApplicantDisplayFormPage, 28 NigeriaApplicantManageFormPage, 29 NigeriaApplicantEditFormPage, 25 30 NigeriaPDFApplicationSlip) 31 32 from kofacustom.nigeria.applicants.interfaces import ( 33 UG_OMIT_DISPLAY_FIELDS, 34 UG_OMIT_PDF_FIELDS, 35 UG_OMIT_MANAGE_FIELDS, 36 UG_OMIT_EDIT_FIELDS, 37 PUTME_OMIT_DISPLAY_FIELDS, 38 PUTME_OMIT_PDF_FIELDS, 39 PUTME_OMIT_MANAGE_FIELDS, 40 PUTME_OMIT_EDIT_FIELDS, 41 PUTME_OMIT_RESULT_SLIP_FIELDS, 42 PUDE_OMIT_DISPLAY_FIELDS, 43 PUDE_OMIT_PDF_FIELDS, 44 PUDE_OMIT_MANAGE_FIELDS, 45 PUDE_OMIT_EDIT_FIELDS, 46 PUDE_OMIT_RESULT_SLIP_FIELDS, 47 ) 48 49 from kofacustom.wdu.applicants.interfaces import ( 50 ICustomUGApplicant, 51 ICustomUGApplicantEdit, 52 ICustomPUTMEApplicantEdit, 53 ) 26 54 27 55 from kofacustom.wdu.interfaces import MessageFactory as _ 28 56 57 58 class CustomApplicantDisplayFormPage(NigeriaApplicantDisplayFormPage): 59 """A display view for applicant data. 60 """ 61 62 @property 63 def form_fields(self): 64 if self.target is not None and self.target.startswith('putme'): 65 form_fields = grok.AutoFields(ICustomUGApplicant) 66 for field in PUTME_OMIT_DISPLAY_FIELDS: 67 form_fields = form_fields.omit(field) 68 elif self.target is not None and self.target.startswith('pude'): 69 form_fields = grok.AutoFields(ICustomUGApplicant) 70 for field in PUDE_OMIT_DISPLAY_FIELDS: 71 form_fields = form_fields.omit(field) 72 else: 73 form_fields = grok.AutoFields(ICustomUGApplicant) 74 for field in UG_OMIT_DISPLAY_FIELDS: 75 form_fields = form_fields.omit(field) 76 #form_fields['perm_address'].custom_widget = BytesDisplayWidget 77 form_fields['notice'].custom_widget = BytesDisplayWidget 78 if not getattr(self.context, 'student_id'): 79 form_fields = form_fields.omit('student_id') 80 if not getattr(self.context, 'screening_score'): 81 form_fields = form_fields.omit('screening_score') 82 if not getattr(self.context, 'screening_venue') or self._not_paid(): 83 form_fields = form_fields.omit('screening_venue') 84 if not getattr(self.context, 'screening_date') or self._not_paid(): 85 form_fields = form_fields.omit('screening_date') 86 return form_fields 87 88 class CustomPDFApplicationSlip(NigeriaPDFApplicationSlip): 89 90 @property 91 def form_fields(self): 92 if self.target is not None and self.target.startswith('putme'): 93 form_fields = grok.AutoFields(ICustomUGApplicant) 94 if self._reduced_slip(): 95 for field in PUTME_OMIT_RESULT_SLIP_FIELDS: 96 form_fields = form_fields.omit(field) 97 else: 98 for field in PUTME_OMIT_PDF_FIELDS: 99 form_fields = form_fields.omit(field) 100 elif self.target is not None and self.target.startswith('pude'): 101 form_fields = grok.AutoFields(ICustomUGApplicant) 102 if self._reduced_slip(): 103 for field in PUDE_OMIT_RESULT_SLIP_FIELDS: 104 form_fields = form_fields.omit(field) 105 else: 106 for field in PUDE_OMIT_PDF_FIELDS: 107 form_fields = form_fields.omit(field) 108 else: 109 form_fields = grok.AutoFields(ICustomUGApplicant) 110 for field in UG_OMIT_PDF_FIELDS: 111 form_fields = form_fields.omit(field) 112 if not getattr(self.context, 'student_id'): 113 form_fields = form_fields.omit('student_id') 114 if not getattr(self.context, 'screening_score'): 115 form_fields = form_fields.omit('screening_score') 116 if not getattr(self.context, 'screening_venue'): 117 form_fields = form_fields.omit('screening_venue') 118 if not getattr(self.context, 'screening_date'): 119 form_fields = form_fields.omit('screening_date') 120 return form_fields 121 122 class CustomApplicantManageFormPage(NigeriaApplicantManageFormPage): 123 """A full edit view for applicant data. 124 """ 125 126 @property 127 def form_fields(self): 128 if self.target is not None and self.target.startswith('putme'): 129 form_fields = grok.AutoFields(ICustomUGApplicant) 130 for field in PUTME_OMIT_MANAGE_FIELDS: 131 form_fields = form_fields.omit(field) 132 elif self.target is not None and self.target.startswith('pude'): 133 form_fields = grok.AutoFields(ICustomUGApplicant) 134 for field in PUDE_OMIT_MANAGE_FIELDS: 135 form_fields = form_fields.omit(field) 136 else: 137 form_fields = grok.AutoFields(ICustomUGApplicant) 138 for field in UG_OMIT_MANAGE_FIELDS: 139 form_fields = form_fields.omit(field) 140 form_fields['student_id'].for_display = True 141 form_fields['applicant_id'].for_display = True 142 return form_fields 143 144 class CustomApplicantEditFormPage(NigeriaApplicantEditFormPage): 145 """An applicant-centered edit view for applicant data. 146 """ 147 148 @property 149 def form_fields(self): 150 if self.target is not None and self.target.startswith('putme'): 151 form_fields = grok.AutoFields(ICustomPUTMEApplicantEdit) 152 for field in PUTME_OMIT_EDIT_FIELDS: 153 form_fields = form_fields.omit(field) 154 elif self.target is not None and self.target.startswith('pude'): 155 form_fields = grok.AutoFields(ICustomUGApplicantEdit) 156 for field in PUDE_OMIT_EDIT_FIELDS: 157 form_fields = form_fields.omit(field) 158 else: 159 form_fields = grok.AutoFields(ICustomUGApplicantEdit) 160 for field in UG_OMIT_EDIT_FIELDS: 161 form_fields = form_fields.omit(field) 162 form_fields['applicant_id'].for_display = True 163 form_fields['reg_number'].for_display = True 164 return form_fields -
main/kofacustom.wdu/trunk/src/kofacustom/wdu/applicants/interfaces.py
r11940 r12885 105 105 """ 106 106 107 class I PUTMEApplicantEdit(IPUTMEApplicantEdit):107 class ICustomPUTMEApplicantEdit(IPUTMEApplicantEdit): 108 108 """An undergraduate applicant interface for editing. 109 109
Note: See TracChangeset for help on using the changeset viewer.