Add clone option for schedules

This commit is contained in:
2020-05-19 11:20:09 +02:00
parent 485307b78e
commit ed6879b7f1
4 changed files with 66 additions and 17 deletions

View File

@@ -3,6 +3,7 @@ from django.shortcuts import render, redirect
from django.views.generic.list import ListView
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.auth.decorators import login_required
from django.forms.models import model_to_dict
from .models import Schedule
from .forms import ScheduleForm
@@ -19,9 +20,16 @@ class ScheduleListView(LoginRequiredMixin,ListView):
return Schedule.objects.filter(employee=self.request.user.employee).order_by('-created_at')
@login_required
def new_or_update_study(request, schedule = None):
def new_or_update_schedule(request, schedule_id = None):
template_name = 'schedule/schedule_new.html'
schedule = None
if schedule_id is not None:
try:
schedule = Schedule.objects.get(pk=schedule_id)
except Schedule.DoesNotExist:
pass
if request.method == 'POST':
schedule_form = ScheduleForm(request.POST)
@@ -43,7 +51,12 @@ def new_or_update_study(request, schedule = None):
return redirect('schedule:list')
else:
schedule_form = ScheduleForm()
if schedule is not None:
print(dir(schedule.planning_source))
schedule = json.dumps(schedule.planning_source)
print(schedule)
schedule_form = ScheduleForm(initial={'json' : schedule})
return render(request, template_name, {
'form' : schedule_form,