Private
Public Access
1
0

alternative panel config form

This commit is contained in:
Sander Roosendaal
2017-10-18 23:41:56 +02:00
parent 456e667432
commit a9d84c4961
4 changed files with 153 additions and 3 deletions

View File

@@ -23,6 +23,7 @@ from django.contrib.auth import authenticate, login, logout
from rowers.forms import (
LoginForm,DocumentsForm,UploadOptionsForm,
TeamUploadOptionsForm,WorkFlowLeftPanelForm,WorkFlowMiddlePanelForm,
WorkFlowLeftPanelElement,WorkFlowMiddlePanelElement,
)
from django.core.urlresolvers import reverse
from django.core.exceptions import PermissionDenied
@@ -5864,6 +5865,7 @@ def workout_workflow_config_view(request):
r = getrower(request.user)
if request.method == 'POST' and 'leftpanel' in request.POST:
formleft = WorkFlowLeftPanelForm(request.POST)
if formleft.is_valid():
@@ -5877,20 +5879,71 @@ def workout_workflow_config_view(request):
r.workflowmiddlepanel = middlepanel
r.save()
formleft = WorkFlowLeftPanelForm(instance=r)
formmiddle = WorkFlowMiddlePanelForm(instance=r)
# Add processing of POST data
tmplt = 'workflowconfig.html'
return render(request,'workflowconfig.html',
return render(request,tmplt,
{
'rower':r,
'formleft':formleft,
'formmiddle':formmiddle,
'workoutid': workoutid,
})
@login_required()
def workout_workflow_config2_view(request):
request.session['referer'] = absolute(request)['PATH']
request.session[translation.LANGUAGE_SESSION_KEY] = USER_LANGUAGE
try:
workoutid = request.session['lastworkout']
except KeyError:
workoutid = 0
r = getrower(request.user)
leftpanelform_data = [{'panel':panel}
for panel in r.workflowleftpanel]
LeftPanelFormSet = formset_factory(WorkFlowLeftPanelElement,extra=0)
middlepanelform_data = [{'panel':panel}
for panel in r.workflowmiddlepanel]
MiddlePanelFormSet = formset_factory(WorkFlowMiddlePanelElement,extra=0)
if request.method == 'POST' and 'leftpanel' in request.POST:
formleft = WorkFlowLeftPanelSimpleForm(request.POST)
if formleft.is_valid():
leftpanel = formleft.cleaned_data['leftpanel']
r.workflowleftpanel = leftpanel
r.save()
if request.method == 'POST' and 'middlepanel' in request.POST:
formmiddle = WorkFlowMiddlePanelSimpleForm(request.POST)
if formmiddle.is_valid():
middlepanel = formmiddle.cleaned_data['middlepanel']
r.workflowmiddlepanel = middlepanel
r.save()
leftpanel_formset = LeftPanelFormSet(initial=leftpanelform_data)
middlepanel_formset = MiddlePanelFormSet(initial=middlepanelform_data)
tmplt = 'workflowconfig2.html'
return render(request,tmplt,
{
'rower':r,
'leftpanel_formset':leftpanel_formset,
'middlepanel_formset':middlepanel_formset,
'workoutid': workoutid,
})
# Workflow View
@login_required()
def workout_workflow_view(request,id):