source: WAeUP_SRP/trunk/skins/waeup_student/getTransferInfo.py @ 11156

Last change on this file since 11156 was 1571, checked in by Henrik Bettermann, 18 years ago

new logging format Part 4 (rest)

  • Property svn:keywords set to Id
File size: 1.8 KB
RevLine 
[1571]1## Script (Python) "getTransferInfo"
[1313]2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
7##parameters=
8##title=
9##
10# $Id: getTransferInfo.py 1571 2007-03-17 15:25:56Z henrik $
11"""
12return Info about the current Student
13"""
14import logging
[1571]15logger = logging.getLogger('Skins.getTransferInfo')
[1313]16from DateTime import DateTime
17
18request = context.REQUEST
19mtool = context.portal_membership
20wf = context.portal_workflow
21member = mtool.getAuthenticatedMember()
22member_id = str(member)
23
24if mtool.isAnonymousUser():
25    return None
26info = {}
27#from Products.zdb import set_trace
28#set_trace()
29requested_id = context.getStudentId()
30if requested_id and not context.isStaff() and member_id != requested_id:
[1571]31    logger.info('%s tried to access %s' % (member_id,requested_id))
[1313]32    return None
33elif context.isStaff():
34    student_id = requested_id
35else:
36    student_id = member_id
37
38
39students_object = context.portal_url.getPortalObject().campus.students
[1331]40
41student = getattr(students_object,student_id)
42payments = getattr(student,'payments').objectIds()
[1338]43info['paid'] = False
[1331]44for payment in payments:
45    if payment.startswith('transfer'):
[1338]46        info['paid'] = True
[1331]47        payments_obj = getattr(student,'payments')
48        payment_obj = getattr(payments_obj,payment)
49        info['pin'] = payment_obj.getContent().order_id
50        break
51
[1338]52
[1313]53#student = getattr(students_object, student_id)
54res = context.students_catalog(id = student_id)
55if len(res) != 1:
56    return None
57sbrain = res[0]
58info['id'] = student_id
59info['student'] = context.getFormattedStudentEntry(sbrain)
60info['entry_mode'] = sbrain.entry_mode
[1317]61results = context.results_import(matric_no=sbrain.matric_no)
[1313]62taken = []
63if len(results) > 0:
64    for r in results:
[1338]65        taken.append(r)
[1313]66info['taken'] = taken
[1333]67
68# for testing of transfer forms
[1339]69#info['paid'] = True
70#info['pin'] = 'CLR-1-0123456789'
[1333]71
72
[1313]73return info
Note: See TracBrowser for help on using the repository browser.