somehow working
This commit is contained in:
@@ -936,6 +936,7 @@ class PlannedSessionFormSmall(ModelForm):
|
|||||||
'criterium',
|
'criterium',
|
||||||
'sessionvalue',
|
'sessionvalue',
|
||||||
'sessionunit',
|
'sessionunit',
|
||||||
|
'manager',
|
||||||
'comment',
|
'comment',
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -951,6 +952,7 @@ class PlannedSessionFormSmall(ModelForm):
|
|||||||
'comment': forms.TextInput(attrs={'size':10}),
|
'comment': forms.TextInput(attrs={'size':10}),
|
||||||
'sessionvalue': forms.TextInput(attrs={'style':'width:3em',
|
'sessionvalue': forms.TextInput(attrs={'style':'width:3em',
|
||||||
'type':'number'}),
|
'type':'number'}),
|
||||||
|
'manager': forms.HiddenInput(),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="grid_12 alpha">
|
<div class="grid_12 alpha">
|
||||||
|
<p>
|
||||||
|
On this page, you can create and edit sessions for an entire time
|
||||||
|
period.
|
||||||
|
</p>
|
||||||
<form id="ps-form-table" method="post">
|
<form id="ps-form-table" method="post">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
{{ ps_formset.management_form }}
|
{{ ps_formset.management_form }}
|
||||||
@@ -68,9 +72,13 @@
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{% for form in ps_formset %}
|
{% for form in ps_formset %}
|
||||||
<tr>
|
<tr id="id_form_row">
|
||||||
<td> {{ forloop.counter }}
|
<td> {{ forloop.counter }}
|
||||||
{% if form.instance.pk %}{{ form.DELETE }}{% endif %}
|
{% if form.instance.pk %}{{ form.DELETE }}{% endif %}
|
||||||
|
{{ form.id }}
|
||||||
|
{% for field in form.hidden_fields %}
|
||||||
|
{{ field }}
|
||||||
|
{% endfor %}
|
||||||
{% for field in form.visible_fields %}
|
{% for field in form.visible_fields %}
|
||||||
<td>
|
<td>
|
||||||
{{ field }}
|
{{ field }}
|
||||||
@@ -80,7 +88,8 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<button type="submit">Submit</button>
|
<a class="button gray small grid_2" href="/rowers/sessions/multicreate/thisweek/rower/{{ rower.id }}/extra/{{ extrasessions }}">Add More</a>
|
||||||
|
<button class="button green small grid_2" type="submit">Submit</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -94,10 +103,9 @@
|
|||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
|
||||||
$('#ps-form-table tbody tr').formset({
|
$('#ps-form-table tbody tr').formset({
|
||||||
prefix: '{{ formset.prefix }}'
|
addText: ''
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
$("td #id_sessionmode").change(function() {
|
$("td #id_sessionmode").change(function() {
|
||||||
|
|
||||||
if (this.value == 'TRIMP') {
|
if (this.value == 'TRIMP') {
|
||||||
|
|||||||
@@ -420,6 +420,8 @@ urlpatterns = [
|
|||||||
views.plannedsession_create_view),
|
views.plannedsession_create_view),
|
||||||
|
|
||||||
url(r'^sessions/multicreate$',views.plannedsession_multicreate_view),
|
url(r'^sessions/multicreate$',views.plannedsession_multicreate_view),
|
||||||
|
url(r'^sessions/multicreate/(?P<timeperiod>[\w\ ]+.*)/rower/(?P<rowerid>\d+)/extra/(?P<extrasessions>\d+)$',
|
||||||
|
views.plannedsession_multicreate_view),
|
||||||
url(r'^sessions/multicreate/rower/(?P<rowerid>\d+)$',
|
url(r'^sessions/multicreate/rower/(?P<rowerid>\d+)$',
|
||||||
views.plannedsession_multicreate_view),
|
views.plannedsession_multicreate_view),
|
||||||
url(
|
url(
|
||||||
|
|||||||
@@ -8811,7 +8811,6 @@ def workout_uploadimage_view(request,id):
|
|||||||
|
|
||||||
if f is not None:
|
if f is not None:
|
||||||
filename,path_and_filename = handle_uploaded_image(f)
|
filename,path_and_filename = handle_uploaded_image(f)
|
||||||
print path_and_filename,'aap'
|
|
||||||
try:
|
try:
|
||||||
width,height = Image.open(path_and_filename).size
|
width,height = Image.open(path_and_filename).size
|
||||||
except:
|
except:
|
||||||
@@ -11647,8 +11646,6 @@ def plannedsession_create_view(request,timeperiod='thisweek',rowerid=0):
|
|||||||
else:
|
else:
|
||||||
forminitial = {}
|
forminitial = {}
|
||||||
|
|
||||||
print forminitial
|
|
||||||
|
|
||||||
sessioncreateform = PlannedSessionForm(initial=forminitial)
|
sessioncreateform = PlannedSessionForm(initial=forminitial)
|
||||||
|
|
||||||
startdate,enddate = get_dates_timeperiod(timeperiod)
|
startdate,enddate = get_dates_timeperiod(timeperiod)
|
||||||
@@ -11666,7 +11663,9 @@ def plannedsession_create_view(request,timeperiod='thisweek',rowerid=0):
|
|||||||
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
@user_passes_test(hasplannedsessions,login_url="/rowers/planmembership/",
|
||||||
redirect_field_name=None)
|
redirect_field_name=None)
|
||||||
def plannedsession_multicreate_view(request,timeperiod='thisweek',
|
def plannedsession_multicreate_view(request,timeperiod='thisweek',
|
||||||
teamid=0,rowerid=0):
|
teamid=0,rowerid=0,extrasessions=0):
|
||||||
|
|
||||||
|
extrasessions=int(extrasessions)
|
||||||
|
|
||||||
if rowerid==0:
|
if rowerid==0:
|
||||||
r = getrower(request.user)
|
r = getrower(request.user)
|
||||||
@@ -11680,29 +11679,78 @@ def plannedsession_multicreate_view(request,timeperiod='thisweek',
|
|||||||
|
|
||||||
startdate,enddate = get_dates_timeperiod(timeperiod)
|
startdate,enddate = get_dates_timeperiod(timeperiod)
|
||||||
sps = get_sessions(r,startdate=startdate,enddate=enddate)
|
sps = get_sessions(r,startdate=startdate,enddate=enddate)
|
||||||
qset = PlannedSession.objects.filter(
|
|
||||||
rower__in=[r],
|
m = Rower.objects.get(user=request.user)
|
||||||
startdate__lte=enddate,
|
|
||||||
enddate__gte=startdate,
|
if m.rowerplan == 'coach':
|
||||||
).order_by("startdate","enddate")
|
teams = Team.objects.filter(manager=request.user)
|
||||||
|
members = Rower.objects.filter(team__in=teams).distinct()
|
||||||
|
if r in members:
|
||||||
|
qset = PlannedSession.objects.filter(
|
||||||
|
rower__in=[r],
|
||||||
|
startdate__lte=enddate,
|
||||||
|
enddate__gte=startdate,
|
||||||
|
).order_by("startdate","enddate")
|
||||||
|
else:
|
||||||
|
qset = []
|
||||||
|
|
||||||
|
if not qset:
|
||||||
|
qset = PlannedSession.objects.filter(
|
||||||
|
rower__in=[r],
|
||||||
|
manager = request.user,
|
||||||
|
startdate__lte=enddate,
|
||||||
|
enddate__gte=startdate,
|
||||||
|
).order_by("startdate","enddate")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
extrasessions = (enddate-startdate).days+1
|
initial = {
|
||||||
|
'startdate':startdate,
|
||||||
PlannedSessionFormSet = modelformset_factory(PlannedSession,
|
'enddate':enddate,
|
||||||
form=PlannedSessionFormSmall,
|
'sessionvalue':60,
|
||||||
# formset=BasePlannedSessionFormSet,
|
'manager':request.user,
|
||||||
can_delete=True,
|
'name': 'NEW SESSION'
|
||||||
extra=extrasessions,
|
}
|
||||||
)
|
|
||||||
ps_formset = PlannedSessionFormSet(queryset = qset)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
initials = [initial for i in range(extrasessions)]
|
||||||
|
PlannedSessionFormSet = modelformset_factory(
|
||||||
|
PlannedSession,
|
||||||
|
form=PlannedSessionFormSmall,
|
||||||
|
can_delete=True,
|
||||||
|
extra=extrasessions,
|
||||||
|
)
|
||||||
|
if request.method == "POST":
|
||||||
|
ps_formset = PlannedSessionFormSet(queryset = qset,
|
||||||
|
data = request.POST)
|
||||||
|
if ps_formset.is_valid():
|
||||||
|
instances = ps_formset.save(commit=False)
|
||||||
|
for ps in instances:
|
||||||
|
ps.save()
|
||||||
|
add_rower_session(r,ps)
|
||||||
|
for obj in ps_formset.deleted_objects:
|
||||||
|
obj.delete()
|
||||||
|
else:
|
||||||
|
print ps_formset.errors
|
||||||
|
|
||||||
|
url = reverse(plannedsession_multicreate_view,
|
||||||
|
kwargs = {
|
||||||
|
'rowerid':r.id,
|
||||||
|
'timeperiod':timeperiod
|
||||||
|
}
|
||||||
|
)
|
||||||
|
return HttpResponseRedirect(url)
|
||||||
|
|
||||||
|
ps_formset = PlannedSessionFormSet(queryset = qset,
|
||||||
|
initial=initials)
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
'ps_formset':ps_formset,
|
'ps_formset':ps_formset,
|
||||||
'rower':r,
|
'rower':r,
|
||||||
'timeperiod':timeperiod,
|
'timeperiod':timeperiod,
|
||||||
'teams':get_my_teams(request.user)
|
'teams':get_my_teams(request.user),
|
||||||
|
'extrasessions': extrasessions+1
|
||||||
}
|
}
|
||||||
|
|
||||||
return render(request,'plannedsession_multicreate.html',context)
|
return render(request,'plannedsession_multicreate.html',context)
|
||||||
|
|||||||
Reference in New Issue
Block a user