From 02a7076397aa7a2a14358b84e2ac1507f8f013aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C4=9Bj=20Koci=C3=A1n?= Date: Tue, 8 Nov 2016 12:30:24 +0100 Subject: [PATCH] =?UTF-8?q?TeX=20upload:=20nevytv=C3=A1=C5=99ej=20Probl?= =?UTF-8?q?=C3=A9my?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seminar/views.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/seminar/views.py b/seminar/views.py index 141e9492..aefea9a5 100644 --- a/seminar/views.py +++ b/seminar/views.py @@ -670,7 +670,6 @@ def texUploadView(request): # Řešení má nastavené číslo svojí úlohy, ale obrázky jsou # ukládány do čísla, kde řešení vyšlo c = meta["cislo_reseni"] - uloz_soubory(request.FILES.items(), meta["rocnik"], c) # Zjistíme typ ukládaného problému typy = { @@ -680,8 +679,8 @@ def texUploadView(request): } problem_typ = typy[meta["typ"]] - # Pokud už problém existuje, vytáhneme jej z db a upravíme + # Pokud neexistuje, vytvoříme jej jedině pokud je to vynucené # Pokud ročník/číslo ještě neexistuje, vyhodí to výjimku -> # číslo/ročník se musí založit ručně v adminu @@ -698,14 +697,22 @@ def texUploadView(request): problem = None if existujici: problem = existujici[0] - # Jinak vytvoříme nový - else: + elif "vytvor" in q: + # vytvoříme nový problem = Problem( typ=problem_typ, stav=Problem.STAV_ZADANY, kod=meta["kod"], cislo_zadani=cislo ) + else: + return JsonResponse({ + "error": "Problém neexistuje: {} {}.{} kód {}".format( + meta["typ"], meta["rocnik"], meta["cislo"], meta["kod"] + ) + }) + + uloz_soubory(request.FILES.items(), meta["rocnik"], c) if meta["typ"] == "reseni": problem.text_reseni = html