Changeset 1415 for WAeUP_SRP/trunk/WAeUPTool.py
- Timestamp:
- 14 Feb 2007, 12:54:55 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
WAeUP_SRP/trunk/WAeUPTool.py
r1411 r1415 72 72 sid = "%c%d" % (letter,r.randint(99999,1000000)) 73 73 return sid 74 75 def generatePassword(self,s=None): ###( 76 import random 77 r = random 78 ##if letter not in ('ABCDEFGIHKLMNOPQRSTUVWXY'): 79 if s is None: 80 s = 'abcdefghklmnpqrstuvwxy23456789' 81 pw = '' 82 while len(pw) < 6: 83 pw += r.choice(s) 84 return pw 74 85 ###) 75 86 … … 133 144 transaction.commit() 134 145 return sid,jamb_reg_no 146 ###) 147 148 security.declareProtected(ModifyPortalContent,'createStudent') ###( 149 def createStudent(self,dict): 150 students_folder = self.portal_url.getPortalObject().campus.students 151 sid = self.waeup_tool.generateStudentId('?') 152 students_folder.invokeFactory('Student', sid) 153 student_obj = getattr(students_folder,sid) 154 password = self.generatePassword() 155 self.makeStudentMember(sid,password) 156 status,entry_mode = dict.get('entry_mode').split('_') 157 wfaction = 'return' 158 if status == "NEW": 159 wfaction = 'admit' 160 matric_no = dict.get('matric_no') 161 email = dict.get('email') 162 level = dict.get('level') 163 study_course = dict.get('study_course') 164 self.portal_workflow.doActionFor(student_obj,wfaction) 165 student_obj.manage_setLocalRoles(sid, ['Owner',]) 166 student_obj.invokeFactory('StudentApplication','application') 167 application = student_obj.application 168 self.portal_workflow.doActionFor(application,'open',dest_container=application) 169 da = {'Title': 'Application Data'} 170 student_obj.invokeFactory('StudentPersonal','personal') 171 da['entry_mode'] = entry_mode 172 personal = student_obj.personal 173 self.portal_workflow.doActionFor(personal,'open',dest_container=personal) 174 dp = {'Title': 'Personal Data'} 175 student_obj.invokeFactory('StudentClearance','clearance') 176 clearance = student_obj.clearance 177 self.portal_workflow.doActionFor(clearance,'open',dest_container=clearance) 178 dc = {'Title': 'Clearance/Eligibility Record'} 179 dc['matric_no'] = matric_no 180 da['app_email'] = dp['email'] = email 181 dp['firstname'] = dict.get('firstname') 182 dp['middlename'] = dict.get('middlename') 183 dp['lastname'] = dict.get('lastname') 184 da['jamb_lastname'] = "%(firstname)s %(middlename)s %(lastname)s" % dict 185 sex = dict.get('sex') 186 if sex: 187 da['jamb_sex'] = 'F' 188 else: 189 da['jamb_sex'] = 'M' 190 dp['sex'] = sex 191 application.getContent().edit(mapping=da) 192 self.portal_workflow.doActionFor(application,'close',dest_container=application) 193 personal.getContent().edit(mapping=dp) 194 clearance.getContent().edit(mapping=dc) 195 self.portal_workflow.doActionFor(clearance,'close',dest_container=clearance) 196 catd = {} 197 catd['id'] = sid 198 catd['entry_mode']= entry_mode 199 catd['email'] = email 200 catd['matric_no'] = matric_no 201 catd['name'] = "%(firstname)s %(middlename)s %(lastname)s" % dp 202 catd['sex'] = dp['sex'] 203 catd['level'] = level 204 certificate_brain = self.getCertificateBrain(study_course) 205 if certificate_brain: 206 cpath = certificate_brain.getPath().split('/') 207 catd['faculty'] = cpath[-4] 208 catd['department'] = cpath[-3] 209 catd['course'] = study_course 210 self.students_catalog.addRecord(**catd) 211 # 212 # Study Course 213 # 214 student_obj.invokeFactory('StudentStudyCourse','study_course') 215 sc = student_obj.study_course 216 self.portal_workflow.doActionFor(sc,'open',dest_container=sc) 217 dsc = {} 218 dsc['study_course'] = study_course 219 dsc['current_level'] = level 220 sc.getContent().edit(mapping=dsc) 221 222 return sid,password 135 223 ###) 136 224 … … 206 294 em = 'Certificate %s org-code %s not found\n' % (certcode, certcode_org) 207 295 logger.info(em) 208 ## validlevel = False209 ## try:210 ## il = int(level) + 100211 ## level = "%s" % il212 ## validlevel = True213 ## except:214 ## em = '"%(matric_no)s","invalid Level","%(Level)s"' % student215 ## logger.info(em)216 ## if not validlevel:217 ## erg = self.results_import(matric_no = student.matric_no)218 ## level = 'xxx'219 ## if erg:220 ## level = erg[0].Level221 ## try:222 ## il = int(level) + 100223 ## level = "%s" % il224 ## em = '"%s","fixed Level from results_import","%s"' % (student.matric_no,erg[0].Level)225 ## logger.info(em)226 ## validlevel = True227 ## except:228 ## em = '"%s","invalid Level in results_import","%s"' % (student.matric_no,erg[0].Level)229 ## logger.info(em)230 296 matric_no = student.matric_no 231 297 sid = student_id
Note: See TracChangeset for help on using the changeset viewer.