Changeset 1135 for WAeUP_SRP/trunk
- Timestamp:
- 22 Dec 2006, 17:03:35 (18 years ago)
- Location:
- WAeUP_SRP/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
WAeUP_SRP/trunk/profiles/default/types/StudentAccommodation.xml
r1018 r1135 38 38 <permission value="Modify portal content"/> 39 39 </action> 40 <action title="Change Bed" action_id="change_bed" category="object" 41 condition_expr="" url_expr="string:${object_url}/change_bed" 42 visible="True"> 43 <permission value="Modify portal content"/> 44 </action> 40 45 </object> -
WAeUP_SRP/trunk/skins/waeup_accommodation/change_bed.py
r1117 r1135 10 10 # $Id$ 11 11 """ 12 re turn Info about the current Student12 relocate to a new bed if allocated bed is wrong 13 13 """ 14 14 import logging 15 logger = logging.getLogger('Student. Clearance.Info')15 logger = logging.getLogger('Student.Accommodation.change_bed') 16 16 17 17 request = context.REQUEST 18 redirect = request.RESPONSE.redirect 18 19 mtool = context.portal_membership 19 20 wf = context.portal_workflow … … 24 25 if mtool.isAnonymousUser(): 25 26 return None 26 info = {} 27 students = context.portal_url.getPortalObject().campus.students 27 28 beds = context.portal_accommodation 28 29 studs = context.students_catalog 30 student_id = context.getStudentId() 31 32 if student_id is not None: 33 logger.info('"%s", "requests bed_change for", "%s"' % (member_id,student_id)) 34 info = context.getAccommodationInfo(student_id) 35 res = beds(student=student_id) 36 if len(res) == 0: 37 logger.info('"%s", "no bed found"' % (student_id)) 38 redirect("%s/%s" % (students.absolute_url(),student_id)) 39 allocated_bed = res[0] 40 status = info['student_status'] 41 student = student_id 42 if allocated_bed.bed_type == status: 43 logger.info('"%s", "correct bed allocated","%s"' % (student_id,status)) 44 redirect("%s/%s/%s" % (students.absolute_url(),student,info['acco_id'])) 45 logger.info('"%s", "change bed", "%s/%s"' % (student_id,allocated_bed.bed_type,status)) 46 beds.modifyRecord(bed=allocated_bed.bed,student='') 47 code,bed = beds.searchAndReserveBed(student_id,status) 48 if code > 0: 49 #from Products.zdb import set_trace; set_trace() 50 d = {} 51 d['bed'] = bed 52 d['student_status'] = status 53 acco_info = context.waeup_tool.getAccommodationInfo(bed) 54 d['acco_maint_code'] = acco_info.get('maintenance_code') 55 d['acco_maint_fee'] = acco_info.get('maintenance_fee') 56 acco_doc = info['acco_doc'] 57 acco_doc.edit(mapping=d) 58 redirect("%s/%s/%s" % (students.absolute_url(),student,info['acco_id'])) 59 logger.info('"%s", "new bed allocation failed","%s"' % (student_id,code)) 60 redirect("%s/%s/%s" % (students.absolute_url(),student,info['acco_id'])) 61 62 info = {} 29 63 records = [r for r in beds() if r.student] 30 64 list = []
Note: See TracChangeset for help on using the changeset viewer.