Private
Public Access
1
0

prototype working

This commit is contained in:
Sander Roosendaal
2021-11-09 21:50:17 +01:00
parent 5118255c73
commit 94305332a5
2 changed files with 18 additions and 11 deletions

View File

@@ -85,9 +85,6 @@ def billing_view(request):
'planselectform':planselectform,
})
@user_passes_test(can_plan,login_url="/rowers/paidplans",
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
def buy_trainingplan_view(request,id=0):
if not PAYMENT_PROCESSING_ON: # pragma: no cover # pragma: no cover
url = reverse('promembership')
@@ -179,9 +176,7 @@ def buy_trainingplan_view(request,id=0):
'form':form,
})
@user_passes_test(can_plan,login_url="/rowers/paidplans",
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
def purchase_checkouts_view(request):
if not PAYMENT_PROCESSING_ON: # pragma: no cover # pragma: no cover
url = reverse('promembership')
@@ -195,6 +190,13 @@ def purchase_checkouts_view(request):
})
return HttpResponseRedirect(url)
if r.rowerplan == 'freecoach':
messages.error(request,'You cannot purchase this training plan as a free coach member')
url = reverse('rower_view_instantplan',kwargs={
'id':plan.uuid,
})
return HttpResponseRedirect(url)
form = TrainingPlanBillingForm(request.POST)
if form.is_valid():
@@ -219,6 +221,14 @@ def purchase_checkouts_view(request):
notes = data['notes']
status = data['status']
startdate = enddate-datetime.timedelta(days=plan.duration)
# upgrade rower
if r.rowerplan == 'basic':
messages.info(request,'You have been upgraded to the Self-Coach plan for the duration of the plan')
r.rowerplan = 'plan'
r.planexpires = enddate
r.save()
p = TrainingPlan(
name=name,
#target=target,
@@ -266,9 +276,6 @@ def purchase_checkouts_view(request):
})
return HttpResponseRedirect(url) # pragma: no cover
@user_passes_test(can_plan,login_url="/rowers/paidplans",
message="This functionality requires a Coach or Self-Coach plan",
redirect_field_name=None)
def confirm_trainingplan_purchase_view(request,id = 0):
if not PAYMENT_PROCESSING_ON: # pragma: no cover # pragma: no cover
url = reverse('promembership')

View File

@@ -2615,8 +2615,8 @@ def rower_view_instantplan(request,id='',userid=0):
).order_by("-date")
if request.method == 'POST' and not request.user.is_anonymous:
if not can_plan(request.user): # pragma: no cover
messages.error(request,'You must be on a <a href="/rowers/paidplans">paid plan</a> to use this functionality')
if not can_plan(request.user) and plan.price == 0: # pragma: no cover
messages.error(request,'You must be on a <a href="/rowers/paidplans">paid plan</a> to use free training plans')
url = reverse('rower_view_instantplan',kwargs={
'id':id,
})