source: WAeUP_SRP/base/skins/waeup_epayment/getPaymentInfo.py @ 3253

Last change on this file since 3253 was 2975, checked in by joachim, 17 years ago
  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1## Script (Python) "getPaymentInfo"
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: getPaymentInfo.py 2975 2008-01-03 17:20:02Z joachim $
11"""
12return Info about the current Student
13"""
14import logging
15logger = logging.getLogger('Skins.getStudentBaseInfo')
16from DateTime import DateTime
17try:
18    from Products.zdb import set_trace
19except:
20    def set_trace():
21        pass
22
23# request = context.REQUEST
24# mtool = context.portal_membership
25# wf = context.portal_workflow
26# member = mtool.getAuthenticatedMember()
27# member_id = str(member)
28
29# if mtool.isAnonymousUser():
30#     return None
31# info = {}
32# requested_id = context.getStudentId()
33# if requested_id and not context.isStaff() and member_id != requested_id:
34#     logger.info('%s tried to access %s' % (member_id,requested_id))
35#     return None
36# elif context.isStaff():
37#     student_id = requested_id
38# else:
39#     student_id = member_id
40info = context.waeup_tool.getAccessInfo(context)
41student_id = info['student_id']
42if student_id is None:
43    return None
44
45
46#students_object = context.portal_url.getPortalObject().campus.students
47#student = getattr(students_object,student_id)
48
49res = context.students_catalog(id = student_id)
50if len(res) != 1:
51    return None
52sbrain = res[0]
53info['id'] = student_id
54info['student'] = context.getFormattedStudentEntry(sbrain)
55payment = context.getContent()
56info['payment_doc'] = payment
57info['is_online_pmt'] = io = payment.resp_code in ('00','AP','IP')
58info['is_scratchcard_pmt'] = isc =  payment.resp_code == 'SC'
59#set_trace()
60# if isc:
61#     p,b,n = str(payment.order_id).split('-')
62#     batch_object = getattr(context.pins,"%s_%s" % (p,b),None)
63#     if batch_object is None:
64#         info['cost'] = "unknown"
65#     else:
66#         cost = batch_object.getContent().cost
67#         info['cost'] = "%6.2f N" % cost
68#         #info['cost'] = "%6.2f N" % getattr(batch_object.getContent(),'cost',0.0)
69info['is_interrupted'] = ii = payment.resp_code == ''
70info['unknown_code'] = not (io or isc or ii)
71info['resp_code'] = payment.resp_code
72info['resp_desc'] = payment.resp_desc
73#info['entry_mode'] = sbrain.entry_mode
74
75
76return info
Note: See TracBrowser for help on using the repository browser.