From a0a03a90dff3071b41edce07068c7fd67dd5048b Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Wed, 19 Dec 2018 21:51:39 +0100 Subject: [PATCH] added subscription_id --- rowers/admin.py | 2 +- rowers/braintreestuff.py | 1 + rowers/models.py | 6 ++++-- rowers/payments.py | 2 +- rowers/templates/paidplans.html | 12 ++++++++++++ 5 files changed, 19 insertions(+), 4 deletions(-) diff --git a/rowers/admin.py b/rowers/admin.py index f5907059..5be9aa7f 100644 --- a/rowers/admin.py +++ b/rowers/admin.py @@ -124,7 +124,7 @@ class VirtualRaceResultAdmin(admin.ModelAdmin): search_fields = ['race__name','username'] class PaidPlanAdmin(admin.ModelAdmin): - list_display = ('name','shortname','price','paymenttype','paymentprocessor','clubsize') + list_display = ('name','shortname','price','paymenttype','paymentprocessor','clubsize','external_id') admin.site.unregister(User) admin.site.register(User,UserAdmin) diff --git a/rowers/braintreestuff.py b/rowers/braintreestuff.py index fb1f22a8..1410476b 100644 --- a/rowers/braintreestuff.py +++ b/rowers/braintreestuff.py @@ -114,6 +114,7 @@ def create_subscription(rower,data): rower.clubsize = plan.clubsize rower.paymenttype = plan.paymenttype rower.rowerplan = plan.shortname + rower.subscription_id = result.subscription.id rower.save() return True else: diff --git a/rowers/models.py b/rowers/models.py index 766c9caf..ab8f822f 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -571,7 +571,7 @@ class PaidPlan(models.Model): clubsize = models.IntegerField(default=0) def __unicode__(self): - return '{name} - {shortname} at {price} EURO ({paymenttype} payment)'.format( + return '{name} - {shortname} at {price:.2f} EURO ({paymenttype} payment)'.format( name = self.name, shortname = self.shortname, price = self.price, @@ -623,6 +623,8 @@ class Rower(models.Model): postal_code = models.CharField(default='',blank=True,null=True,max_length=200) customer_id = models.CharField(default=None,null=True,blank=True,max_length=200) + subscription_id = models.CharField(default=None,null=True, + blank=True,max_length=200) rowerplan = models.CharField(default='basic',max_length=30, choices=plans) @@ -634,7 +636,7 @@ class Rower(models.Model): paymentprocessor = models.CharField(max_length=50, choices=paymentprocessors, null=True,blank=True, - default=None) + default='braintree') paidplan = models.ForeignKey(PaidPlan,null=True,default=None) diff --git a/rowers/payments.py b/rowers/payments.py index 692852af..488191c1 100644 --- a/rowers/payments.py +++ b/rowers/payments.py @@ -22,7 +22,7 @@ def setrowerplans(): if paidplans: r.paidplan = paidplans[0] - r.paymenttype = 'paypal' + r.paymentprocessor = 'paypal' r.save() else: print 'Could not set plan for ',r diff --git a/rowers/templates/paidplans.html b/rowers/templates/paidplans.html index 1c3c30e4..bbd4789a 100644 --- a/rowers/templates/paidplans.html +++ b/rowers/templates/paidplans.html @@ -241,6 +241,18 @@ {% endif %} + {% elif rower and rower.rowerplan == 'coach' and rower.clubsize < 100 %} +   +   + + + {% else %}