In making a stripe charge, record transaction.type and transaction.approved.

Fixed Campaign.transactions() to handle default variables properly (compare with dfe17f94fa (L0R257) )
pull/1/head
Raymond Yee 2012-09-13 14:12:49 -07:00
parent b85fbfc78b
commit c5f22742c1
2 changed files with 15 additions and 2 deletions

View File

@ -274,8 +274,13 @@ class Campaign(models.Model):
def transactions(self, **kwargs):
p = PaymentManager()
return p.query_campaign(self, summary=False, campaign_total=True, **kwargs)
# handle default parameter values
kw = {'summary':False, 'campaign_total':True}
kw.update(kwargs)
return p.query_campaign(self, **kw)
def activate(self):
status = self.status

View File

@ -52,7 +52,7 @@ from regluit.frontend.forms import getTransferCreditForm, CCForm
from regluit.payment.manager import PaymentManager
from regluit.payment.models import Transaction
from regluit.payment.parameters import TRANSACTION_STATUS_ACTIVE, TRANSACTION_STATUS_COMPLETE, TRANSACTION_STATUS_CANCELED, TRANSACTION_STATUS_ERROR, TRANSACTION_STATUS_FAILED, TRANSACTION_STATUS_INCOMPLETE, TRANSACTION_STATUS_NONE, TRANSACTION_STATUS_MODIFIED
from regluit.payment.parameters import PAYMENT_TYPE_AUTHORIZATION
from regluit.payment.parameters import PAYMENT_TYPE_AUTHORIZATION, PAYMENT_TYPE_INSTANT
from regluit.payment.credit import credit_transaction
from regluit.core import goodreads
from tastypie.models import ApiKey
@ -157,6 +157,7 @@ def work(request, work_id, action='display'):
except:
pledged = None
logger.info("pledged: {0}".format(pledged))
countdown = ""
try:
@ -778,7 +779,14 @@ class FundPledgeView(FormView):
customer = None
charge = sc.create_charge(preapproval_amount, card=stripe_token, description="${0} for test / cc not retained".format(preapproval_amount))
# change to PAYMENT_TYPE_AUTHORIZATION when we are doing a real preapproval
self.transaction.type = PAYMENT_TYPE_INSTANT
# set True for now -- wondering whether we should actually wait for a webhook -- don't think so.
self.transaction.approved = True
self.transaction.pay_key = charge.id
self.transaction.currency = 'USD'
self.transaction.amount = preapproval_amount
self.transaction.status = TRANSACTION_STATUS_COMPLETE