upgrade done
This commit is contained in:
@@ -1109,6 +1109,40 @@ def billing_view(request):
|
||||
'planselectform':planselectform,
|
||||
})
|
||||
|
||||
@login_required()
|
||||
def upgrade_view(request):
|
||||
r = getrequestrower(request)
|
||||
|
||||
if request.method == 'POST':
|
||||
billingaddressform = RowerBillingAddressForm(request.POST)
|
||||
planselectform = PlanSelectForm(request.POST,paymentprocessor='braintree')
|
||||
if billingaddressform.is_valid():
|
||||
cd = billingaddressform.cleaned_data
|
||||
for attr, value in cd.items():
|
||||
setattr(r, attr, value)
|
||||
r.save()
|
||||
|
||||
if planselectform.is_valid():
|
||||
plan = planselectform.cleaned_data['plan']
|
||||
if billingaddressform.is_valid():
|
||||
url = reverse(upgrade_confirm_view,
|
||||
kwargs={
|
||||
'planid':plan.id
|
||||
})
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
else:
|
||||
billingaddressform = RowerBillingAddressForm(instance=r)
|
||||
planselectform = PlanSelectForm(paymentprocessor='braintree',
|
||||
rower=r)
|
||||
|
||||
return render(request,
|
||||
'upgrade.html',
|
||||
{'rower':r,
|
||||
'billingaddressform':billingaddressform,
|
||||
'planselectform':planselectform,
|
||||
})
|
||||
|
||||
@login_required()
|
||||
def plan_stop_view(request):
|
||||
r = getrequestrower(request)
|
||||
@@ -1148,6 +1182,27 @@ def plan_tobasic_view(request,id=0):
|
||||
|
||||
|
||||
|
||||
@login_required()
|
||||
def upgrade_confirm_view(request,planid = 0):
|
||||
try:
|
||||
plan = PaidPlan.objects.get(id=planid)
|
||||
except PaidPlan.DoesNotExist:
|
||||
messages.error(request,"Something went wrong. Please try again.")
|
||||
url = reverse(billing_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
r = getrequestrower(request)
|
||||
|
||||
client_token = braintreestuff.get_client_token(r)
|
||||
|
||||
return render(request,
|
||||
"upgradeconfirm.html",
|
||||
{
|
||||
'plan':plan,
|
||||
'client_token':client_token,
|
||||
'rower':r,
|
||||
})
|
||||
|
||||
@login_required()
|
||||
def payment_confirm_view(request,planid = 0):
|
||||
try:
|
||||
@@ -1197,7 +1252,37 @@ def checkouts_view(request):
|
||||
url = reverse(billing_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
url = reverse(payments_view)
|
||||
url = reverse(paidplans_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
@login_required()
|
||||
def upgrade_checkouts_view(request):
|
||||
|
||||
r = getrequestrower(request)
|
||||
|
||||
if request.method != 'POST':
|
||||
url = reverse(paidplans_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
form = BillingForm(request.POST)
|
||||
if form.is_valid():
|
||||
data = form.cleaned_data
|
||||
success = braintreestuff.update_subscription(r,data)
|
||||
if success:
|
||||
messages.info(request,"Your payment has succeeded and your plan has been updated")
|
||||
url = reverse(payment_completed_view)
|
||||
return HttpResponseRedirect(url)
|
||||
else:
|
||||
messages.error(request,"There was a problem with your payment")
|
||||
url = reverse(upgrade_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
else:
|
||||
messages.error(request,"There was an error in the payment form")
|
||||
url = reverse(upgrade_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
url = reverse(paidplans_view)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user