From dd86fc1fcb8243b746bd6c202f61571d779b3be9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Thu, 12 Dec 2024 13:52:55 +0100 Subject: [PATCH] =?UTF-8?q?Dynamick=C3=BD=20update=20stavu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- korektury/api/urls.py | 7 ++++ korektury/api/views.py | 20 +++++++++++ .../korekturovatko/_zmena_stavu.html | 35 +++++++++++++++++-- korektury/urls.py | 4 +++ 4 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 korektury/api/urls.py create mode 100644 korektury/api/views.py diff --git a/korektury/api/urls.py b/korektury/api/urls.py new file mode 100644 index 00000000..23ac8559 --- /dev/null +++ b/korektury/api/urls.py @@ -0,0 +1,7 @@ +from django.urls import path +from personalni.utils import org_required +from . import views + +urlpatterns = [ + path('korektury/api//stav', org_required(views.korektury_stav_view), name='korektury_api_pdf_stav'), +] diff --git a/korektury/api/views.py b/korektury/api/views.py new file mode 100644 index 00000000..358a3502 --- /dev/null +++ b/korektury/api/views.py @@ -0,0 +1,20 @@ +from django.http import HttpResponseForbidden, JsonResponse +from django.shortcuts import get_object_or_404 +from django.views.decorators.csrf import csrf_exempt + +from rest_framework import serializers + +from korektury.utils import send_email_notification_komentar +from korektury.models import Oprava, KorekturovanePDF, Komentar +from personalni.models import Organizator, Osoba + + +def korektury_stav_view(request, pdf_id: int, **kwargs): + q = request.POST + pdf = get_object_or_404(KorekturovanePDF, id=pdf_id) + status = q.get('state') + if status is not None: + assert status in KorekturovanePDF.STATUS.values + pdf.status = status + pdf.save() + return JsonResponse({'status': pdf.status}) diff --git a/korektury/templates/korektury/korekturovatko/_zmena_stavu.html b/korektury/templates/korektury/korekturovatko/_zmena_stavu.html index e0415019..d2cb9bec 100644 --- a/korektury/templates/korektury/korekturovatko/_zmena_stavu.html +++ b/korektury/templates/korektury/korekturovatko/_zmena_stavu.html @@ -1,9 +1,8 @@

Změnit stav PDF:

Aktuální: {{pdf.status}}
-
+ {% csrf_token %} - Přidávání korektur
Zanášení korektur @@ -12,3 +11,35 @@
+ + + diff --git a/korektury/urls.py b/korektury/urls.py index cf45ea8f..6dc00a4e 100644 --- a/korektury/urls.py +++ b/korektury/urls.py @@ -1,4 +1,6 @@ from django.urls import path +from django.urls import include + from personalni.utils import org_required from . import views @@ -7,4 +9,6 @@ urlpatterns = [ path('korektury/neseskupene/', org_required(views.KorekturyAktualniListView.as_view()), name='korektury_neseskupene_list'), path('korektury/zastarale/', org_required(views.KorekturyZastaraleListView.as_view()), name='korektury_stare_list'), path('korektury//', org_required(views.KorekturyView.as_view()), name='korektury'), + + path('api/', include('korektury.api.urls')), ]