Index: main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py
===================================================================
--- main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py	(revision 17855)
+++ main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_webservices.py	(revision 17856)
@@ -654,7 +654,9 @@
             {'entry_mode': None, 'reg_number': '123', 'display_item': None,
                 'firstname': 'Anna', 'payment_date': 'None#',
+                'p_combi': [],
                 'middlename': None, 'student_id': 'K1000000', 'p_id':
                 'my-id1', 'certcode': 'CERT1', 'entry_session': 2004,
                 'creation_date': str('%s#' % to_timezone(payment1.creation_date, tz)),
+                'p_level': None,
                 'state': 'created', 'current_session': 2004,
                 'faccode': 'fac1', 'lastname': 'Tester',
@@ -664,7 +666,9 @@
             {'entry_mode': None, 'reg_number': '123', 'display_item': None,
                 'firstname': 'Anna', 'payment_date': 'None#',
+                'p_combi': [],
                 'middlename': None, 'student_id': 'K1000000',
                 'p_id': 'my-id2', 'certcode': 'CERT1', 'entry_session': 2004,
                 'creation_date': str('%s#' % to_timezone(payment2.creation_date, tz)),
+                'p_level': None,
                 'state': 'created', 'current_session': 2004, 'faccode': 'fac1',
                 'lastname': 'Tester', 'p_category': 'clearance',
@@ -700,28 +704,152 @@
 <value><nil/></value></member>
 <member>
+<name>creation_date</name>
+<value><string>%s</string></value>
+</member>
+<member>
+<name>p_level</name>
+<value><nil/></value></member>
+<member>
+<name>p_category</name>
+<value><string>schoolfee</string></value>
+</member>
+<member>
+<name>amount_auth</name>
+<value><double>12.12</double></value>
+</member>
+<member>
 <name>reg_number</name>
 <value><string>123</string></value>
 </member>
 <member>
+<name>payment_date</name>
+<value><string>None#</string></value>
+</member>
+<member>
+<name>p_combi</name>
+<value><array><data>
+</data></array></value>
+</member>
+<member>
+<name>student_id</name>
+<value><string>K1000000</string></value>
+</member>
+<member>
+<name>entry_session</name>
+<value><int>2004</int></value>
+</member>
+<member>
+<name>state</name>
+<value><string>created</string></value>
+</member>
+<member>
+<name>p_session</name>
+<value><int>2012</int></value>
+</member>
+<member>
+<name>matric_number</name>
+<value><string>234</string></value>
+</member>
+<member>
+<name>firstname</name>
+<value><string>Anna</string></value>
+</member>
+<member>
+<name>middlename</name>
+<value><nil/></value></member>
+<member>
+<name>lastname</name>
+<value><string>Tester</string></value>
+</member>
+<member>
+<name>certcode</name>
+<value><string>CERT1</string></value>
+</member>
+<member>
+<name>depcode</name>
+<value><string>dep1</string></value>
+</member>
+<member>
 <name>display_item</name>
 <value><nil/></value></member>
 <member>
+<name>p_id</name>
+<value><string>my-id1</string></value>
+</member>
+<member>
+<name>faccode</name>
+<value><string>fac1</string></value>
+</member>
+<member>
+<name>current_session</name>
+<value><int>2004</int></value>
+</member>
+<member>
+<name>p_state</name>
+<value><string>paid</string></value>
+</member>
+</struct></value>
+<value><struct>
+<member>
+<name>entry_mode</name>
+<value><nil/></value></member>
+<member>
+<name>creation_date</name>
+<value><string>%s</string></value>
+</member>
+<member>
+<name>p_level</name>
+<value><nil/></value></member>
+<member>
+<name>p_category</name>
+<value><string>clearance</string></value>
+</member>
+<member>
+<name>amount_auth</name>
+<value><double>12.12</double></value>
+</member>
+<member>
+<name>reg_number</name>
+<value><string>123</string></value>
+</member>
+<member>
+<name>payment_date</name>
+<value><string>None#</string></value>
+</member>
+<member>
+<name>p_combi</name>
+<value><array><data>
+</data></array></value>
+</member>
+<member>
+<name>student_id</name>
+<value><string>K1000000</string></value>
+</member>
+<member>
+<name>entry_session</name>
+<value><int>2004</int></value>
+</member>
+<member>
+<name>state</name>
+<value><string>created</string></value>
+</member>
+<member>
+<name>p_session</name>
+<value><int>2012</int></value>
+</member>
+<member>
+<name>matric_number</name>
+<value><string>234</string></value>
+</member>
+<member>
 <name>firstname</name>
 <value><string>Anna</string></value>
 </member>
 <member>
-<name>payment_date</name>
-<value><string>None#</string></value>
-</member>
-<member>
 <name>middlename</name>
 <value><nil/></value></member>
 <member>
-<name>student_id</name>
-<value><string>K1000000</string></value>
-</member>
-<member>
-<name>p_id</name>
-<value><string>my-id1</string></value>
+<name>lastname</name>
+<value><string>Tester</string></value>
 </member>
 <member>
@@ -730,18 +858,17 @@
 </member>
 <member>
-<name>creation_date</name>
-<value><string>%s</string></value>
-</member>
-<member>
-<name>matric_number</name>
-<value><string>234</string></value>
-</member>
-<member>
-<name>state</name>
-<value><string>created</string></value>
-</member>
-<member>
-<name>lastname</name>
-<value><string>Tester</string></value>
+<name>depcode</name>
+<value><string>dep1</string></value>
+</member>
+<member>
+<name>display_item</name>
+<value><nil/></value></member>
+<member>
+<name>p_id</name>
+<value><string>my-id2</string></value>
+</member>
+<member>
+<name>faccode</name>
+<value><string>fac1</string></value>
 </member>
 <member>
@@ -750,113 +877,6 @@
 </member>
 <member>
-<name>faccode</name>
-<value><string>fac1</string></value>
-</member>
-<member>
-<name>entry_session</name>
-<value><int>2004</int></value>
-</member>
-<member>
-<name>p_category</name>
-<value><string>schoolfee</string></value>
-</member>
-<member>
-<name>amount_auth</name>
-<value><double>12.12</double></value>
-</member>
-<member>
-<name>p_session</name>
-<value><int>2012</int></value>
-</member>
-<member>
 <name>p_state</name>
 <value><string>paid</string></value>
-</member>
-<member>
-<name>depcode</name>
-<value><string>dep1</string></value>
-</member>
-</struct></value>
-<value><struct>
-<member>
-<name>entry_mode</name>
-<value><nil/></value></member>
-<member>
-<name>reg_number</name>
-<value><string>123</string></value>
-</member>
-<member>
-<name>display_item</name>
-<value><nil/></value></member>
-<member>
-<name>firstname</name>
-<value><string>Anna</string></value>
-</member>
-<member>
-<name>payment_date</name>
-<value><string>None#</string></value>
-</member>
-<member>
-<name>middlename</name>
-<value><nil/></value></member>
-<member>
-<name>student_id</name>
-<value><string>K1000000</string></value>
-</member>
-<member>
-<name>p_id</name>
-<value><string>my-id2</string></value>
-</member>
-<member>
-<name>certcode</name>
-<value><string>CERT1</string></value>
-</member>
-<member>
-<name>creation_date</name>
-<value><string>%s</string></value>
-</member>
-<member>
-<name>matric_number</name>
-<value><string>234</string></value>
-</member>
-<member>
-<name>state</name>
-<value><string>created</string></value>
-</member>
-<member>
-<name>lastname</name>
-<value><string>Tester</string></value>
-</member>
-<member>
-<name>current_session</name>
-<value><int>2004</int></value>
-</member>
-<member>
-<name>faccode</name>
-<value><string>fac1</string></value>
-</member>
-<member>
-<name>entry_session</name>
-<value><int>2004</int></value>
-</member>
-<member>
-<name>p_category</name>
-<value><string>clearance</string></value>
-</member>
-<member>
-<name>amount_auth</name>
-<value><double>12.12</double></value>
-</member>
-<member>
-<name>p_session</name>
-<value><int>2012</int></value>
-</member>
-<member>
-<name>p_state</name>
-<value><string>paid</string></value>
-</member>
-<member>
-<name>depcode</name>
-<value><string>dep1</string></value>
 </member>
 </struct></value>
@@ -873,45 +893,45 @@
         return
 
-    def test_get_payment(self):
-        payment1 = StudentOnlinePayment()
-        payment1.p_id = 'my-id1'
-        payment1.p_session = 2012
-        payment1.amount_auth = 12.12
-        payment1.p_state = u'failed'
-        payment1.p_category = u'schoolfee'
-        payment1.r_company = u'xyz'
-        self.student['payments']['my-payment1'] = payment1
-        server = ServerProxy('http://mgr:mgrpw@localhost/app', allow_none=True)
-        results = server.get_payment()
-        self.assertEqual(results, None)
-        results = server.get_payment('nonsense')
-        self.assertEqual(results, None)
-        results = server.get_payment('my-id1')
-        self.assertEqual(
-            results,
-                {'display_item': None,
-                'p_id': 'my-id1',
-                'p_category': 'schoolfee',
-                'amount_auth': 12.12, 'p_session': 2012,
-                'p_state': 'failed',
-                'r_company': 'xyz',
-                'fullname': 'Anna Tester',
-                'id': 'K1000000',
-                'matric_number': '234'}
-                )
-
-        REQUEST_XML = """\
-<?xml version="1.0"?>
-<methodCall>
-<methodName>get_payment</methodName>
-<params>
-<param>
-<value><string>my-id1</string></value>
-</param>
-</params>
-</methodCall>"""
-        RESPONSE_XML = """\
-<?xml version='1.0'?>
-<methodResponse>
+        def test_get_payment(self):
+            payment1 = StudentOnlinePayment()
+            payment1.p_id = 'my-id1'
+            payment1.p_session = 2012
+            payment1.amount_auth = 12.12
+            payment1.p_state = u'failed'
+            payment1.p_category = u'schoolfee'
+            payment1.r_company = u'xyz'
+            self.student['payments']['my-payment1'] = payment1
+            server = ServerProxy('http://mgr:mgrpw@localhost/app', allow_none=True)
+            results = server.get_payment()
+            self.assertEqual(results, None)
+            results = server.get_payment('nonsense')
+            self.assertEqual(results, None)
+            results = server.get_payment('my-id1')
+            self.assertEqual(
+                results,
+                    {'display_item': None,
+                    'p_id': 'my-id1',
+                    'p_category': 'schoolfee',
+                    'amount_auth': 12.12, 'p_session': 2012,
+                    'p_state': 'failed',
+                    'r_company': 'xyz',
+                    'fullname': 'Anna Tester',
+                    'id': 'K1000000',
+                    'matric_number': '234'}
+                    )
+
+            REQUEST_XML = """\
+    <?xml version="1.0"?>
+    <methodCall>
+    <methodName>get_payment</methodName>
+    <params>
+    <param>
+    <value><string>my-id1</string></value>
+    </param>
+    </params>
+    </methodCall>"""
+            RESPONSE_XML = """\
+    <?xml version='1.0'?>
+    <methodResponse>
 <params>
 <param>
Index: main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py
===================================================================
--- main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py	(revision 17855)
+++ main/waeup.kofa/trunk/src/waeup/kofa/students/webservices.py	(revision 17856)
@@ -477,4 +477,6 @@
                 payment_date=str('%s#' % to_timezone(
                     payment.payment_date, tz)),
+                p_level=payment.p_level,
+                p_combi=payment.p_combi,
                 )
               )
