Changeset 1988
- Timestamp:
- 5 Jul 2007, 11:14:12 (17 years ago)
- Location:
- WAeUP_SRP/branches/joachim-azax-branch
- Files:
-
- 25 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
WAeUP_SRP/branches/joachim-azax-branch/WAeUPTables.py
r1971 r1988 61 61 def manage_catalogClear(self, REQUEST=None, RESPONSE=None, URL1=None): 62 62 """ clears the whole enchilada """ 63 63 64 64 #if REQUEST and RESPONSE: 65 65 # RESPONSE.redirect( … … 357 357 digit = int(doc.jamb_reg_no[0]) 358 358 except: 359 return " xx"359 return "-1" 360 360 if digit < 8: 361 361 return "0%c" % doc.jamb_reg_no[0] 362 362 return "9%c" % doc.jamb_reg_no[0] 363 364 def get_from_doc_session(self,doc):365 "return the students session"366 if doc is None:367 return None368 return getattr(doc,'current_session',None)369 363 370 364 def get_from_doc_course(self,doc): -
WAeUP_SRP/branches/joachim-azax-branch/WAeUPTool.py
r1965 r1988 855 855 d[zu] = mapping[von] 856 856 sub_doc.edit(mapping = d) 857 858 new_state = f2t[pt]['wf_transition_admitted'] 857 transition = mapping.get('reg_transition','admitted') 858 if transition not in ('admitted','returning'): 859 transition = 'admitted' 860 #import pdb;pdb.set_trace() 861 new_state = f2t[pt]['wf_transition_%(transition)s' % vars()] 859 862 if new_state != "remain": 860 863 self.portal_workflow.doActionFor(sub_obj,new_state,dest_container=sub_obj) -
WAeUP_SRP/branches/joachim-azax-branch/Widgets.py
r1915 r1988 177 177 178 178 class WAeUPStudyModeWidget(CPSSelectWidget): ###( 179 """WAeUP StudyMode widget."""179 """WAeUP StudyMode Widget.""" 180 180 meta_type = 'WAeUP StudyMode Widget' 181 181 vocabulary = 'entry_modes' … … 246 246 247 247 class WAeUPSessionWidget(CPSSelectWidget): ###( 248 """WAeUP Session widget."""248 """WAeUP Session Widget.""" 249 249 meta_type = 'WAeUP Session Widget' 250 250 251 251 def _getSessions(self): 252 252 current_year = DateTime().year() 253 d = {' xx': 'unknown'}253 d = {'-1': 'N/A'} 254 254 for y in range(current_year - 9,current_year + 1): 255 255 d['%s' % str(y)[-2:]] = '%4d/%4d' % (y,y+1) … … 295 295 vocabulary_items = sessions.items() 296 296 if self.sorted: 297 vocabulary_items.sort(key=operator.itemgetter( 1))297 vocabulary_items.sort(key=operator.itemgetter(0)) 298 298 for k, v in vocabulary_items: 299 299 kw = {'value': k, 'contents': v} … … 321 321 322 322 def _getLevels(self): 323 d = {' 999':'unknown'}323 d = {'000':'N/A'} 324 324 for y in range(100,800,100): 325 325 d['%s' % str(y)] = 'Year %1d (%3d Level)' % (y/100,y) … … 363 363 vocabulary_items = levels.items() 364 364 if self.sorted: 365 vocabulary_items.sort(key=operator.itemgetter( 1))365 vocabulary_items.sort(key=operator.itemgetter(0)) 366 366 for k, v in vocabulary_items: 367 367 kw = {'value': k, 'contents': v} … … 385 385 386 386 class WAeUPVerdictWidget(CPSSelectWidget): ###( 387 """WAeUP Verdict widget."""387 """WAeUP Verdict Widget.""" 388 388 meta_type = 'WAeUP Verdict Widget' 389 389 -
WAeUP_SRP/branches/joachim-azax-branch/__init__.py
r1934 r1988 30 30 import Products.WAeUP_SRP.WAeUPPermissions 31 31 import WAeUPTool 32 import Azax 32 33 33 34 import Widgets 34 tools = (WAeUPTool.WAeUPTool,) 35 tools = (WAeUPTool.WAeUPTool, 36 Azax.KSSTool) 35 37 36 38 waeup_types = ( … … 100 102 101 103 def initialize(registrar): 102 ToolInit('WAeUP Tool ',104 ToolInit('WAeUP Tools', 103 105 tools=tools, 104 106 icon='tool.gif', -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/layouts/import_student.xml
r1958 r1988 8 8 <property name="flexible_widgets"/> 9 9 <property name="validate_values_expr"></property> 10 <widget name="reg_transition" meta_type="String Widget"> 11 <property name="title">Transition after import</property> 12 <property name="fields"> 13 <element value="reg_transition"/> 14 </property> 15 <property name="label">Transition</property> 16 <property name="label_edit">Transition</property> 17 <property name="readonly_layout_modes"/> 18 <property name="hidden_layout_modes"/> 19 <property name="hidden_readonly_layout_modes"/> 20 </widget> 10 21 <widget name="email" meta_type="Email Widget"> 11 22 <property name="title">Email</property> … … 164 175 <property name="hidden_layout_modes"/> 165 176 <property name="hidden_readonly_layout_modes"/> 166 <property name="vocabulary"> sessions</property>177 <property name="vocabulary">unset</property> 167 178 <property name="sorted">True</property> 168 179 </widget> … … 179 190 <property name="hidden_layout_modes"/> 180 191 <property name="hidden_readonly_layout_modes"/> 181 <property name="vocabulary"> courselevel</property>192 <property name="vocabulary">unset</property> 182 193 <property name="sorted">True</property> 183 194 </widget> … … 195 206 <property name="hidden_readonly_layout_modes"/> 196 207 <property name="vocabulary">verdicts</property> 208 <property name="sorted">True</property> 197 209 </widget> 198 210 <widget name="entry_session" meta_type="WAeUP Session Widget"> … … 206 218 <property name="hidden_layout_modes"/> 207 219 <property name="hidden_readonly_layout_modes"/> 208 <property name="vocabulary"> sessions</property>220 <property name="vocabulary">unset</property> 209 221 <property name="sorted">True</property> 210 222 </widget> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/schemas/import_student.xml
r1804 r1988 2 2 <?xml-stylesheet type="text/xsl" href="schema.xsl"?> 3 3 <object name="import_student" meta_type="CPS Schema"> 4 <field name="reg_transition" meta_type="CPS String Field"/> 4 5 <field name="firstname" meta_type="CPS String Field"/> 5 6 <field name="middlename" meta_type="CPS String Field"/> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/skins.xml
r1740 r1988 3 3 cookie_persistence="False" default_skin="CPSSkins" 4 4 request_varname="portal_skin"> 5 <object name="waeup_azax" meta_type="Filesystem Directory View" 6 directory="WAeUP_SRP/skins/waeup_azax"/> 5 7 <object name="waeup_custom" meta_type="Filesystem Directory View" 6 8 directory="WAeUP_SRP/skins/waeup_custom"/> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/toolset.xml
r1935 r1988 23 23 <required tool_id="waeup_tool" 24 24 class="Products.WAeUP_SRP.WAeUPTool.WAeUPTool"/> 25 <required tool_id="kss_tool" 26 class="Products.WAeUP_SRP.Azax.KSSTool"/> 25 27 </tool-setup> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/vocabularies/courselevel.xml
r1736 r1988 6 6 <property name="description"></property> 7 7 <property name="acl_write_roles">Manager</property> 8 <item key=" unknown" msgid="">unknown</item>8 <item key="000" msgid="">N/A</item> 9 9 <item key="100" msgid="">Year 1 (100 Level)</item> 10 10 <item key="200" msgid="">Year 2 (200 Level)</item> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/vocabularies/entry_modes.xml
r1736 r1988 6 6 <property name="description"></property> 7 7 <property name="acl_write_roles">Manager</property> 8 <item key="unknown" msgid=""> unknown</item>8 <item key="unknown" msgid="">N/A</item> 9 9 <item key="ume_ft" msgid="">UME Full Time</item> 10 10 <item key="de_ft" msgid="">Direct Entry Full Time</item> -
WAeUP_SRP/branches/joachim-azax-branch/profiles/default/vocabularies/verdicts.xml
r1769 r1988 6 6 <property name="description"></property> 7 7 <property name="acl_write_roles">Manager</property> 8 <item key="N/A" msgid="">N/A</item> 8 9 <item key="A" msgid="">successful student</item> 9 10 <item key="B" msgid="">student with carryover courses</item> … … 18 19 <item key="K" msgid="">unregistered student</item> 19 20 <item key="L" msgid="">referred student</item> 20 <item key="N/A" msgid="">N/A</item>21 21 </object> -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/academicsParent.py
r486 r1988 12 12 obj=context 13 13 14 14 15 parent=obj.aq_parent 15 16 -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/academics_index.py
r937 r1988 12 12 return the appropriate page in the academics section 13 13 """ 14 try: 15 from Products.zdb import set_trace 16 except: 17 def set_trace(): 18 pass 14 19 15 20 request = context.REQUEST -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/getCertificatesInfo.py
r913 r1988 12 12 return Info about the Faculties 13 13 """ 14 try: 15 from Products.zdb import set_trace 16 except: 17 def set_trace(): 18 pass 14 19 request = context.REQUEST 15 20 … … 19 24 20 25 info = {} 21 #dep_id = request.get('PATH_TRANSLATED').split('/')[-2]22 dep_id = context.aq_parent.getId()26 dep_id = path_info[-2] 27 #set_trace() 23 28 info['action'] = "%s" % context.absolute_url() 24 29 info['choosen_ids'] = request.get('ids',[]) 25 30 info['doc'] = context.getContent() 26 res = context.portal_catalog(meta_type="Department",id = dep_id)31 #res = context.portal_catalog(meta_type="Department",id = dep_id) 27 32 info['courses'] = [] 28 if not res: 29 return info 30 brain = res[-1] 31 cp = brain.getPath() 33 # if not res: 34 # return info 35 # brain = res[-1] 36 # cp = brain.getPath() 37 cp = '/'.join(path_info[:-2]) 32 38 info['container_path'] = cp 33 39 info['dep_id'] = dep_id -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/getCoursesCertificatesInfo.py
r1434 r1988 15 15 16 16 wf = context.portal_workflow 17 path_info = request.get('PATH_INFO').split('/')18 17 19 18 info = {} … … 21 20 info['choosen_ids'] = request.get('ids',[]) 22 21 info['doc'] = context.getContent() 23 brain = context.portal_catalog(meta_type="Department", id = context.getId())[-1] 24 cp = brain.getPath() 22 # brain = context.portal_catalog(meta_type="Department", id = context.getId())[-1] 23 # cp = brain.getPath() 24 cp = request.get('PATH_INFO') 25 25 info['container_path'] = cp 26 #res = context.portal_catalog(container_path="%s/courses" % cp)27 #items = []28 #for r in res:29 # row = {}30 # ro = r.getObject()31 # rd = ro.getContent()32 # row['id'] = r.getId33 # row['title'] = rd.Title()34 # row['url'] = ro.absolute_url()35 # items.append(row)36 #info['courses'] = items37 26 res = context.portal_catalog(container_path="%s/certificates" % cp) 38 27 items = [] -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/getCoursesInfo.py
r1366 r1988 28 28 29 29 info = {} 30 #dep_id = request.get('PATH_TRANSLATED').split('/')[-2]31 dep_id = context.aq_parent.getId()30 dep_id = path_info[-2] 31 #dep_id = context.aq_parent.getId() 32 32 info['action'] = "%s" % context.absolute_url() 33 33 info['choosen_ids'] = request.get('ids',[]) 34 34 info['doc'] = context.getContent() 35 res = context.portal_catalog(meta_type="Department",id = dep_id) 36 info['courses'] = [] 37 if not res: 38 return info 39 brain = res[-1] 40 cp = brain.getPath() 35 # res = context.portal_catalog(meta_type="Department",id = dep_id) 36 # info['courses'] = [] 37 # if not res: 38 # return info 39 # brain = res[-1] 40 # cp = brain.getPath() 41 cp = '/'.join(path_info[:-2]) 41 42 info['container_path'] = cp 42 43 info['dep_id'] = dep_id -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/getDepartmentsInfo.py
r913 r1988 12 12 return Info about the Faculties 13 13 """ 14 try: 15 from Products.zdb import set_trace 16 except: 17 def set_trace(): 18 pass 14 19 request = context.REQUEST 15 20 … … 17 22 mtool = context.portal_membership 18 23 member = mtool.getAuthenticatedMember() 19 path_info = request.get('PATH_INFO').split('/')24 #path_info = request.get('PATH_INFO').split('/') 20 25 21 26 info = {} … … 26 31 items = [] 27 32 info['doc'] = context.getContent() 28 brain = context.portal_catalog(meta_type="Faculty", id = context.getId())[-1] 29 cp = brain.getPath() 33 # set_trace() 34 # brain = context.portal_catalog(portal_type="Faculty", id = context.getId())[-1] 35 # cp = brain.getPath() 36 cp = request.get('PATH_INFO') 30 37 info['container_path'] = cp 31 38 res = context.portal_catalog(container_path=cp) -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_academics/getDocumentInfo.py
r1783 r1988 10 10 # $Id:getDocumentInfo.py 486 2006-09-06 10:09:39Z joachim $ 11 11 """ 12 return Info about the Faculties12 return Info about the Documents 13 13 """ 14 request = context.REQUEST15 16 wf = context.portal_workflow17 path_info = request.get('PATH_INFO').split('/')18 14 19 15 info = {} -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_default/sessions_voc.py
r1758 r1988 6 6 """ 7 7 if key is None: 8 l = [('xx','unknown')] 8 # not used for WAeUPSessionWidget, only for SelectWidget 9 l = [('-1','N/A')] 9 10 for y in range(1998,2008): 10 11 l.append( ('%s' % str(y)[-2:],'%4d/%4d' % (y,y+1))) … … 14 15 y = int(key) 15 16 except: 16 return 'unknown' 17 return 'N/A' 18 if y == -1: 19 return 'N/A' 17 20 if y < 90: 18 21 cent = 2000 -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_default/waeup_edit.py
r1855 r1988 19 19 import logging 20 20 logger = logging.getLogger('Skins.waeup_edit') 21 try: 22 from Products.zdb import set_trace 23 except: 24 def set_trace(): 25 pass 21 26 22 27 mtool = context.portal_membership -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_design/main_template.pt
r1922 r1988 3 3 emptybody emptybody|request/emptybody|nothing; 4 4 mtool here/portal_membership; 5 6 5 utool nocall:here/portal_url; 7 6 atool here/portal_actions; … … 39 38 <metal:block define-slot="base"> 40 39 <base href="" 41 tal:attributes="href string:${ here_url}/" />40 tal:attributes="href string:${context/get_proxy_url}" /> 42 41 </metal:block> 43 42 </metal:block> -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_student/create_level.py
r1856 r1988 34 34 current_level = student.level 35 35 in_progress = request.get('in_progress','not started') 36 level_created = request.get('level_created','xxx')36 #level_created = request.get('level_created','xxx') 37 37 create_level = request.get('create_level',None) 38 38 … … 71 71 l = [] 72 72 carry_overs = results 73 73 74 74 # carry_overs for probation students: yes or not, that is the question 75 75 #if student.verdict == "C": # on probation -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_student/external_study_level_view.pt
r1737 r1988 1 <metal:html> 2 <metal:body use-macro="here/slip_template/macros/master"> 3 <metal:block fill-slot="header" 4 tal:define="global info context/getStudyLevelInfo; 5 global is_so context/isSectionOfficer; 6 global is_ca info/is_ca; 7 global show_check_boxes info/show_check_boxes; 8 global is_student info/is_student; 9 global status_info info/status_info; 10 global review_state info/review_state; 11 global view_only info/view_only"> 12 <div style="text-align: right" 13 tal:condition="python:review_state == 'courses_validated'"> 14 <a href="" target="slip" tal:attributes="href string:course_registration_slip" 15 onclick="javascript:window.open('','slip','width=600, height=700, directories=no, toolbar=no, location=no, menubar=yes, scrollbars=yes, status=no, resizable=no, dependent=no')"> 16 <img tal:attributes="src string:${here/portal_url}/actionicon_print.png" /> 17 Course Registration Slip 18 </a> 19 20 </div> 1 <metal:body use-macro="here/slip_template/macros/master"> 2 <metal:main fill-slot="main" 3 tal:define="info context/getStudyLevelInfo;"> 4 5 <span tal:condition="not: info"> 6 <span tal:content="here/illegal_view" /> 7 </span> 8 <span tal:condition="info"> 9 <span tal:define= "is_so context/isSectionOfficer; 10 is_ca info/is_ca; 11 show_check_boxes info/show_check_boxes; 12 is_student info/is_student; 13 status_info info/status_info; 14 review_state info/review_state; 15 view_only info/view_only"> 16 17 <div style="text-align: right" 18 tal:condition="python:review_state in ('courses_registered','courses_validated',)"> 19 <a href="" target="slip" tal:attributes="href string:course_registration_slip" 20 onclick="javascript:window.open('','slip','width=600, height=700, directories=no, toolbar=no, location=no, menubar=yes, scrollbars=yes, status=no, resizable=no, dependent=no')"> 21 <img tal:attributes="src string:${here/portal_url}/actionicon_print.png" /> 22 Course Registration Slip 23 </a> 24 </div> 25 21 26 22 27 <h3> … … 27 32 </h3> 28 33 29 </metal:block>30 <metal:main fill-slot="main" tal:condition="python:1">31 34 <form action="." method="post" class="group"> 32 35 <span tal:condition="info/carry_overs" tal:omit-tag=""> … … 46 49 </td> 47 50 <td width="78%" tal:content="row/title"></td> 48 <td align="center"width="10%" tal:content="row/code"></td>49 <td align="center"width="2%">S<span tal:content="row/semester" /></td>50 <td align="center"width="2%" tal:content="row/credits"></td>51 <td align="center"width="8%" tal:content="row/grade|string:"></td>51 <td width="10%" tal:content="row/code"></td> 52 <td width="2%">S<span tal:content="row/semester" /></td> 53 <td width="2%" tal:content="row/credits"></td> 54 <td width="8%" tal:content="row/grade|string:"></td> 52 55 </tr> 53 56 </table> … … 73 76 </td> 74 77 <td width="78%" tal:content="row/title"></td> 75 <td align="center"width="10%" tal:content="row/code"></td>76 <td align="center"width="2%">S<span tal:content="row/semester" /></td>77 <td align="center"width="2%" tal:content="row/credits"></td>78 <td align="center"width="8%" tal:content="row/coe|nothing"></td>78 <td width="10%" tal:content="row/code"></td> 79 <td width="2%">S<span tal:content="row/semester" /></td> 80 <td width="2%" tal:content="row/credits"></td> 81 <td width="8%" tal:content="row/coe|nothing"></td> 79 82 </tr> 80 83 <tr> … … 196 199 </table> 197 200 </form> 198 </metal:main> 199 </metal:body> 200 </metal:html> 201 </span> 202 </span> 203 </metal:main> 204 </metal:body> 201 205 -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_student/layout_clearance_view.pt
r1837 r1988 22 22 <tr> 23 23 <tal:block condition="widget/label"> 24 <td width="180px" >24 <td width="180px" valign="top"> 25 25 <span i18n:translate="" tal:condition="widget/is_i18n"> 26 26 <span tal:content="widget/label" />:</span> -
WAeUP_SRP/branches/joachim-azax-branch/skins/waeup_student/student_view.pt
r1795 r1988 1 1 <metal:body use-macro="here/main_template/macros/master"> 2 2 <metal:main fill-slot="main" 3 tal:define="info context/getStudentFolderInfo;"> 3 tal:define="info context/getStudentFolderInfo; 4 baseinfo context/getStudentBaseInfo"> 4 5 <metal:block tal:condition="not: info"> 5 6 <span tal:content="here/illegal_view" /> … … 19 20 <h3 tal:content="info/name" /> 20 21 <br /> 21 22 <table tal:condition="is_staff" class="contentListing" width="100%" summary="content layout" id="folder_content">23 <tr tal:repeat="row rows"24 tal:attributes="class python:test(repeat['row'].even(), 'even ajaxtd', 'odd ajaxtd')">25 <td><a href="view" tal:attributes="href string:${row/url}">26 <strong tal:content="row/title" /></a> </td>27 <td>28 <a tal:condition="python: row['is_editable'] and not row['type'] in ('StudentClearance','StudentAccommodation',)"29 href="edit" tal:attributes="href string:${row/url}/external_edit_form"30 target="edit"31 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')">32 [edit]33 </a>34 <a tal:condition="python: row['is_editable'] and row['type']=='StudentClearance'"35 href="edit" tal:attributes="href string:${row/url}/external_clearance_edit_form"36 target="edit"37 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')">38 [edit and change state]39 </a>40 <a tal:condition="python: context.isClearanceOfficer() and row['type']=='StudentClearance'"41 href="edit" tal:attributes="href string:${row/url}/external_clearance_edit_form"42 target="edit"43 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')">44 [change state]45 </a>46 </td>47 48 </tr>49 <tr tal:condition="info/session">50 <td>51 <a href="edit" tal:attributes="href string:session_results_view">52 <strong>Session Results</strong>53 </a>54 </td>55 <td>56 57 </td>58 </tr>59 </table>60 22 61 62 <span tal:condition="python:info['member'].id in 63 ('admin','joachim','kehindesamuel','med','isouaba','obadejo', 64 'ehioaiks','despej','shinakale','igadoghe','benamechi','edafeohwo')"> 65 <br /> 66 <form action="mail_password_form" method="post" class="group"> 67 <input type="submit" class="context" value="Send Email with Authentication Data" /> 68 </form> 69 </span> 23 24 25 <table> 26 <tr> 27 <td width="220px">Registration Number:</td> 28 <td><span tal:content="baseinfo/student/jamb_reg_no" /></td> 29 </tr> 30 <tr> 31 <td>Matriculation Number:</td> 32 <td><span tal:content="baseinfo/student/matric_no" /></td> 33 </tr> 34 <tr> 35 <td>Certificate Code:</td> 36 <td><span tal:content="baseinfo/student/course" /></td> 37 </tr> 38 <tr> 39 <td>Faculty Id:</td> 40 <td tal:content="baseinfo/student/faculty" /> 41 </tr> 42 <tr> 43 <td>Department Id:</td> 44 <td><span tal:content="baseinfo/student/department" /></td> 45 </tr> 46 <tr> 47 <td>Current Session:</td> 48 <td><span tal:content="python:context.portal_vocabularies.sessions.get(baseinfo['student']['session'])" /></td> 49 </tr> 50 <tr> 51 <td>Current Study Level:</td> 52 <td><span tal:content="python:context.portal_vocabularies.courselevel.get(baseinfo['student']['level'])" /></td> 53 </tr> 54 <tr> 55 <td>Current Study Mode:</td> 56 <td><span tal:content="python:context.portal_vocabularies.entry_modes.get(baseinfo['student']['mode'])" /></td> 57 </tr> 58 <tr tal:define="verdict python:context.portal_vocabularies.verdicts.get(baseinfo['student']['verdict'])"> 59 <td>Current Verdict:</td> 60 <td><span tal:condition="verdict" tal:content="python:verdict.upper()" /></td> 61 </tr> 62 </table> 63 64 <br /> 65 66 <table tal:condition="is_staff" class="contentListing" width="100%" summary="content layout" id="folder_content"> 67 <tr tal:repeat="row rows" 68 tal:attributes="class python:test(repeat['row'].even(), 'even ajaxtd', 'odd ajaxtd')"> 69 <td><a href="view" tal:attributes="href string:${row/url}"> 70 <strong tal:content="row/title" /></a> </td> 71 <td> 72 <a tal:condition="python: row['is_editable'] and not row['type'] in ('StudentClearance','StudentAccommodation','PaymentsFolder')" 73 href="edit" tal:attributes="href string:${row/url}/external_edit_form" 74 target="edit" 75 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')"> 76 [edit] 77 </a> 78 <a tal:condition="python: row['is_editable'] and row['type']=='StudentClearance'" 79 href="edit" tal:attributes="href string:${row/url}/external_clearance_edit_form" 80 target="edit" 81 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')"> 82 [edit and change state] 83 </a> 84 <a tal:condition="python: context.isClearanceOfficer() and row['type']=='StudentClearance'" 85 href="edit" tal:attributes="href string:${row/url}/external_clearance_edit_form" 86 target="edit" 87 onclick="javascript:window.open('','edit','width=600, height=700, directories=no, toolbar=no, location=no, menubar=no, scrollbars=yes, status=no, resizable=no, dependent=no')"> 88 [change state] 89 </a> 90 </td> 91 92 </tr> 93 <tr tal:condition="info/session"> 94 <td> 95 <a href="edit" tal:attributes="href string:session_results_view"> 96 <strong>Session Results</strong> 97 </a> 98 </td> 99 <td> 100 101 </td> 102 </tr> 103 </table> 104 105 106 <span tal:condition="python:info['member'].id in 107 ('admin','joachim','kehindesamuel','med','isouaba','obadejo', 108 'ehioaiks','despej','shinakale','igadoghe','benamechi','edafeohwo')"> 109 <br /> 110 <form action="mail_password_form" method="post" class="group"> 111 <input type="submit" class="context" value="Send Email with Authentication Data" /> 112 </form> 113 </span> 70 114 71 115 72 116 73 117 74 <table tal:condition="is_student" class="contentListing" width="" summary="content layout" id="folder_content"> 75 <span tal:repeat="row rows"> 76 <tr tal:condition="row/display"> 77 <td><a href="view" tal:condition="row/s_view_link" 78 tal:attributes="href string:${row/s_view_link}"> 79 <strong tal:content="row/title" /></a> 80 <strong tal:condition="not:row/s_view_link" tal:content="row/title" /> 118 <table tal:condition="is_student" class="contentListing" width="" summary="content layout" id="folder_content"> 119 <span tal:repeat="row rows"> 120 <tr tal:condition="row/display"> 121 <td width="220px"><a href="view" tal:condition="row/s_view_link" 122 tal:attributes="href string:${row/s_view_link}"> 123 <strong tal:content="row/title" /></a> 124 <strong tal:condition="not:row/s_view_link" tal:content="row/title" /> 125 </td> 126 127 <td align="left"> 128 <span tal:content="row/review_state" /> 129 </td> 130 131 <td width="40px" align="center"> 132 <a tal:condition="python: row['s_edit_link'] and row['is_editable']" 133 href="edit" tal:attributes="href string:${row/s_edit_link}"> 134 [edit] 135 </a> 136 </td> 137 138 139 </tr> 140 </span> 141 <tr tal:condition="info/session"> 142 <td> 143 <a href="edit" tal:attributes="href string:session_results_view"> 144 <strong>Session Results</strong> 145 </a> 81 146 </td> 82 83 <td width="80px" align="center"> 84 <a tal:condition="python: row['s_edit_link'] and row['is_editable']" 85 href="edit" tal:attributes="href string:${row/s_edit_link}"> 86 [edit] 87 </a> 88 </td> 89 90 <td width="100px" align="left"> 91 <span tal:content="row/review_state" /> 147 <td> 148 92 149 </td> 93 150 </tr> 94 </span> 95 <tr tal:condition="info/session"> 96 <td> 97 <a href="edit" tal:attributes="href string:session_results_view"> 98 <strong>Session Results</strong> 99 </a> 100 </td> 101 <td> 102 103 </td> 104 </tr> 105 </table> 151 </table> 106 152 107 153 </metal:block>
Note: See TracChangeset for help on using the changeset viewer.