From aba6b1868dbf5e175dee3487c559a7083917221b Mon Sep 17 00:00:00 2001 From: "Pavel \"LEdoian\" Turinsky" Date: Tue, 25 May 2021 23:57:36 +0200 Subject: [PATCH] =?UTF-8?q?Admin:=20vynucen=C3=AD=20po=C5=99ad=C3=AD=20na?= =?UTF-8?q?=20deadlin=C3=A1ch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seminar/models.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/seminar/models.py b/seminar/models.py index 654a3b23..f7c6ec46 100644 --- a/seminar/models.py +++ b/seminar/models.py @@ -680,6 +680,17 @@ class Cislo(SeminarModelBase): # Neexistující *Node nemá smysl aktualizovat. pass + def clean(self): + # Finální deadline má být až poslední a je povinný, pokud nějaký deadline existuje. + # Existence: + if self.datum_deadline is None and (self.datum_preddeadline is not None or self.datum_deadline_soustredeni is not None): + raise ValidationError({'datum_deadline': "Číslo musí mít finální deadline, pokud má nějaké deadliny"}) + if self.datum_deadline is not None: + if self.datum_preddeadline is not None and self.datum_preddeadline > self.datum_deadline: + raise ValidationError({'datum_preddeadline': "Předdeadline musí předcházet finálnímu deadlinu"}) + if self.datum_deadline_soustredeni is not None and self.datum_deadline_soustredeni > self.datum_deadline: + raise ValidationError({'datum_deadline_soustredeni': "Soustřeďkový deadline musí předcházet finálnímu deadlinu"}) + @reversion.register(ignore_duplicates=True) class Organizator(SeminarModelBase): # zmena dedicnosti z models.Model na SeminarModelBase, potencialni vznik bugu