## Script (Python) "checkApprovedAmount"
##bind container=container
##bind context=context
##bind namespace=
##bind script=script
##bind subpath=traverse_subpath
##parameters=
##title=
##
# $Id: checkApprovedAmount.py 3132 2008-02-08 21:10:38Z henrik $
"""
"""
try:
    from Products.zdb import set_trace
except:
    def set_trace():
        pass

mtool = context.portal_membership
member = mtool.getAuthenticatedMember()
if str(member) not in ('admin'):
    return

import logging
import DateTime
logger = logging.getLogger('Skins.checkApprovedAmount')
from Products.AdvancedQuery import Eq, Between, Le,In
payments = context.payments_catalog()

counter = 0
for payment in payments:
    if not payment.status == 'paid' and payment.type == 'online':
        continue
    try:
        amount = int(payment.amount)
        surcharge = int(payment.surcharge)
        resp_approved_amount = int(payment.resp_approved_amount)
    except:
        logger.info('invalid literal: %s, %s, %s, %s, %s,%s' % (payment.student_id, payment.order_id, payment.amount, payment.resp_approved_amount, payment.surcharge, payment.resp_desc))
        continue
    if amount + surcharge == resp_approved_amount:
        continue
    counter +=1
    logger.info('%s, %s, %s, %s, %s ,%s' % (payment.student_id, payment.order_id, payment.amount, payment.resp_approved_amount, payment.surcharge, payment.resp_desc))


return 'finished!'


