monkey_patches sync_card
This commit is contained in:
parent
f1262837b4
commit
4a67271b94
2 changed files with 33 additions and 0 deletions
32
pinaxcon/monkey_patch.py
Normal file
32
pinaxcon/monkey_patch.py
Normal file
|
@ -0,0 +1,32 @@
|
|||
from django.conf import settings
|
||||
from django.core.mail import EmailMultiAlternatives
|
||||
from functools import wraps
|
||||
|
||||
|
||||
class MonkeyPatchMiddleware(object):
|
||||
''' Ensures that our monkey patching only gets called after it is safe to do so.'''
|
||||
|
||||
def process_request(self, request):
|
||||
do_monkey_patch()
|
||||
|
||||
|
||||
def do_monkey_patch():
|
||||
patch_stripe_card_defaults()
|
||||
|
||||
# Remove this function from existence
|
||||
global do_monkey_patch
|
||||
do_monkey_patch = lambda: None
|
||||
|
||||
|
||||
def patch_stripe_card_defaults():
|
||||
from pinax.stripe.actions import sources
|
||||
from collections import defaultdict
|
||||
|
||||
old_sync_card = sources.sync_card
|
||||
|
||||
def sync_card(customer, source):
|
||||
d = defaultdict(str)
|
||||
d.update(source)
|
||||
return old_sync_card(customer, d)
|
||||
|
||||
sources.sync_card = sync_card
|
|
@ -149,6 +149,7 @@ MIDDLEWARE_CLASSES = [
|
|||
"ssl_redirect.middleware.SSLRedirectMiddleware",
|
||||
"pinaxcon.middleware.CanonicalHostMiddleware",
|
||||
"pinaxcon.middleware.UnprependWWWMiddleware",
|
||||
"pinaxcon.monkey_patch.MonkeyPatchMiddleware",
|
||||
]
|
||||
|
||||
ROOT_URLCONF = "pinaxcon.urls"
|
||||
|
|
Loading…
Reference in a new issue