2025-01-26 00:53:17 +01:00
|
|
|
from django.core.files.uploadedfile import UploadedFile
|
|
|
|
from django.shortcuts import render, get_object_or_404, redirect
|
|
|
|
from django.views import generic
|
|
|
|
|
|
|
|
from dispatcher.core import import_tasks
|
|
|
|
from dispatcher.forms import ProjectForm, ImportForm
|
|
|
|
from dispatcher.models import Project, Parent
|
2025-01-25 00:47:31 +01:00
|
|
|
|
|
|
|
|
|
|
|
def dashboard_view(request):
|
2025-01-26 00:53:17 +01:00
|
|
|
context = {
|
|
|
|
"projects": Project.objects.all(),
|
|
|
|
"parents": Parent.objects.all()
|
|
|
|
}
|
|
|
|
return render(request, "dashboard.html", context)
|
|
|
|
|
|
|
|
def projects_view(request):
|
|
|
|
context = {
|
|
|
|
"projects": Project.objects.all(),
|
|
|
|
"parents": Parent.objects.all()
|
|
|
|
}
|
|
|
|
return render(request, "projects.html", context)
|
|
|
|
|
|
|
|
def project_view(request, id):
|
|
|
|
project = get_object_or_404(Project, id=id)
|
|
|
|
context = {}
|
|
|
|
form = ProjectForm(request.POST or None, request.FILES or None, instance=project)
|
|
|
|
if form.is_valid():
|
|
|
|
form.save()
|
|
|
|
context["form"] = ProjectForm(instance=project)
|
|
|
|
return render(request, "project.html", context)
|
|
|
|
|
|
|
|
def import_view(request):
|
|
|
|
if request.method == "POST":
|
|
|
|
form = ImportForm(request.POST, request.FILES)
|
|
|
|
if form.is_valid():
|
|
|
|
print(request.FILES)
|
|
|
|
import_tasks(request.FILES["file"].read().decode("utf-8"))
|
|
|
|
return redirect("dashboard")
|
|
|
|
|
|
|
|
return render(request, "import.html")
|
|
|
|
|
|
|
|
class ParentsView(generic.ListView):
|
|
|
|
model = Parent
|
|
|
|
template_name = "parents.html"
|
|
|
|
context_object_name = "elements"
|