diff --git a/seminar/models/tvorba.py b/seminar/models/tvorba.py index d123e021..fcb60479 100644 --- a/seminar/models/tvorba.py +++ b/seminar/models/tvorba.py @@ -390,10 +390,11 @@ class Problem(SeminarModelBase,PolymorphicModel): # Implicitini implementace, jednotlivé dědící třídy si přepíšou @cached_property def kod_v_rocniku(self): - if self.stav == 'zadany': + if self.stav == Problem.STAV_ZADANY or self.stav == Problem.STAV_VYRESENY: if self.nadproblem: return self.nadproblem.kod_v_rocniku+".{}".format(self.kod) return str(self.kod) + logger.warning(f"K problému {self} byl vyžadován kód v ročníku, i když není zadaný ani vyřešený.") return '' # def verejne(self): @@ -467,10 +468,11 @@ class Tema(Problem): @cached_property def kod_v_rocniku(self): - if self.stav == 'zadany': + if self.stav == Problem.STAV_ZADANY or self.stav == Problem.STAV_VYRESENY: if self.nadproblem: return self.nadproblem.kod_v_rocniku+".t{}".format(self.kod) return "t{}".format(self.kod) + logger.warning(f"K problému {self} byl vyžadován kód v ročníku, i když není zadaný ani vyřešený.") return '' def save(self, *args, **kwargs): @@ -501,11 +503,12 @@ class Clanek(Problem): @cached_property def kod_v_rocniku(self): - if self.stav == 'zadany': + if self.stav == Problem.STAV_ZADANY or self.stav == Problem.STAV_VYRESENY: # Nemělo by být potřeba # if self.nadproblem: # return self.nadproblem.kod_v_rocniku+".c{}".format(self.kod) return "c{}".format(self.kod) + logger.warning(f"K problému {self} byl vyžadován kód v ročníku, i když není zadaný ani vyřešený.") return '' def node(self): @@ -538,11 +541,12 @@ class Uloha(Problem): @cached_property def kod_v_rocniku(self): - if self.stav == 'zadany': + if self.stav == Problem.STAV_ZADANY or self.stav == Problem.STAV_VYRESENY: name="{}.u{}".format(self.cislo_zadani.poradi,self.kod) if self.nadproblem: return self.nadproblem.kod_v_rocniku+name return name + logger.warning(f"K problému {self} byl vyžadován kód v ročníku, i když není zadaný ani vyřešený.") return '' def save(self, *args, **kwargs):