Compare commits

..

No commits in common. "5b36650e6fb9dd5be4a6b367ef06f49e5d579e24" and "14c6706bf31dc3b2f04435d7cca349bd159acd90" have entirely different histories.

View file

@ -411,19 +411,15 @@ class NahrajReseniView(LoginRequiredMixin, CreateView):
model = m.Reseni
template_name = 'odevzdavatko/nahraj_reseni.html'
form_class = f.NahrajReseniForm
nadproblem: m.Problem
def setup(self, request, *args, **kwargs):
super().setup(request, *args, **kwargs)
nadproblem_id = self.kwargs["nadproblem_id"]
self.nadproblem = get_object_or_404(m.Problem, id=nadproblem_id)
def get(self, request, *args, **kwargs):
# Zaříznutí nezadaných problémů
nadproblem_id = self.kwargs["nadproblem_id"]
self.nadproblem = get_object_or_404(m.Problem, id=nadproblem_id)
if self.nadproblem.stav != m.Problem.STAV_ZADANY:
raise PermissionDenied()
# Zaříznutí starých řešitelů:
# FIXME: Je to tady dost naprasené, mělo by to asi být jinde…
osoba = m.Osoba.objects.get(user=self.request.user)
@ -437,7 +433,10 @@ class NahrajReseniView(LoginRequiredMixin, CreateView):
return super().get(request, *args, **kwargs)
def get_initial(self):
nadproblem_id = self.nadproblem.id
#nadproblem_id = self.nadproblem.id
# Hotfix: nevím, proč nemáme self.nadproblem, ale občas nemáme.
nadproblem_id = self.kwargs["nadproblem_id"]
self.nadproblem = get_object_or_404(m.Problem, id=nadproblem_id)
return {
"nadproblem_id": nadproblem_id,
"problem": [] if self.nadproblem.podproblem.filter(stav=m.Problem.STAV_ZADANY).exists() else nadproblem_id