Merge branch 'release/v16.7.0'
This commit is contained in:
@@ -1571,9 +1571,11 @@ class TrainingTargetForm(ModelForm):
|
||||
if not teams:
|
||||
self.fields.pop('rowers')
|
||||
else:
|
||||
self.fields['rowers'].queryset = Rower.objects.filter(
|
||||
qs1 = Rower.objects.filter(
|
||||
team__in=teams
|
||||
).distinct().order_by("user__last_name","user__first_name")
|
||||
|
||||
self.fields['rowers'].queryset = qs1
|
||||
|
||||
|
||||
class InstantPlan(models.Model):
|
||||
|
||||
@@ -1050,6 +1050,7 @@ def get_workouts_session(r,ps):
|
||||
|
||||
def create_sessions_from_json(plansteps,rower,startdate,manager):
|
||||
trainingdays = plansteps['trainingDays']
|
||||
planstartdate = startdate
|
||||
for day in trainingdays:
|
||||
for workout in day['workouts']:
|
||||
sessionsport = 'water'
|
||||
@@ -1058,10 +1059,12 @@ def create_sessions_from_json(plansteps,rower,startdate,manager):
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
preferreddate = planstartdate+timedelta(days=day['order'])
|
||||
|
||||
ps = PlannedSession(
|
||||
startdate = startdate+timedelta(days=day['order']),
|
||||
enddate = startdate,
|
||||
preferreddate = startdate,
|
||||
startdate = preferreddate-timedelta(days=preferreddate.weekday()),
|
||||
enddate = preferreddate+timedelta(days=-preferreddate.weekday(),weeks=1),
|
||||
preferreddate = preferreddate,
|
||||
sessionsport = sessionsport, # change this
|
||||
name = workout['workoutName'],
|
||||
steps = workout,
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
<thead>
|
||||
<tr>
|
||||
<th align="left">Status</th>
|
||||
<th align="left">Date</th>
|
||||
<th align="left">On or After</th>
|
||||
<th align="left">On or Before</th>
|
||||
<th align="left">Name</th>
|
||||
@@ -78,6 +79,7 @@
|
||||
href="/rowers/virtualevent/{{ ps.id }}/submit"> </a>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td> {{ ps.preferreddate|date:"Y-m-d"}} </td>
|
||||
<td> {{ ps.startdate|date:"Y-m-d" }} </td>
|
||||
<td> {{ ps.enddate|date:"Y-m-d" }} </td>
|
||||
<td>
|
||||
|
||||
@@ -95,6 +95,11 @@ def buy_trainingplan_view(request,id=0):
|
||||
|
||||
r = request.user.rower
|
||||
|
||||
targets = TrainingTarget.objects.filter(
|
||||
rowers=r,
|
||||
date__gte=timezone.now(),
|
||||
).order_by("-date")
|
||||
|
||||
plan = get_object_or_404(InstantPlan,pk=id)
|
||||
|
||||
if r.paymentprocessor != 'braintree': # pragma: no cover
|
||||
@@ -110,7 +115,7 @@ def buy_trainingplan_view(request,id=0):
|
||||
|
||||
if request.method == 'POST':
|
||||
billingaddressform = RowerBillingAddressForm(instance=r)
|
||||
form = InstantPlanSelectForm(request.POST)
|
||||
form = InstantPlanSelectForm(request.POST,targets=targets)
|
||||
if billingaddressform.is_valid(): # pragma: no cover
|
||||
cd = billingaddressform.cleaned_data
|
||||
for attr, value in cd.items():
|
||||
@@ -129,7 +134,8 @@ def buy_trainingplan_view(request,id=0):
|
||||
|
||||
# get target and set enddate
|
||||
try:
|
||||
target = cd['target']
|
||||
targetid = cd['target']
|
||||
target = TrainingTarget.objects.get(id=int(targetid))
|
||||
except KeyError:
|
||||
try:
|
||||
targetid = request.POST['target']
|
||||
|
||||
@@ -2795,7 +2795,7 @@ def rower_select_instantplan(request,id=0):
|
||||
themanager = getrower(request.user)
|
||||
|
||||
# get and present available plans
|
||||
ips = InstantPlan.objects.all().order_by("sessionsperweek","hoursperweek","duration","id")
|
||||
ips = InstantPlan.objects.all().order_by("name","sessionsperweek","hoursperweek","duration","id")
|
||||
|
||||
breadcrumbs = [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user