# Boilerplate: potřebujeme nějakou permission, protože nějaká haluz v Djangu…
returnrequest.user.is_superuser
classDeadlineAdminInline(admin.TabularInline):
model=Deadline
extra=0
classCisloForm(ModelForm):
classMeta:
model=Cislo
fields='__all__'
defclean(self):
ifself.cleaned_data.get('verejne_db')==False:
returnself.cleaned_data
# cn = CisloNode.objects.get(cislo=self.instance)
# errors = []
# for ch in tl.all_children(cn):
# if isinstance(ch, TemaVCisleNode):
# if ch.tema.stav not in \
# (Problem.STAV_ZADANY, Problem.STAV_VYRESENY):
# errors.append(ValidationError('Téma %(tema)s není zadané ani vyřešené', params={'tema':ch.tema}))
#
# if isinstance(ch, UlohaZadaniNode) or isinstance(ch, UlohaVzorakNode):
# if ch.uloha.stav not in \
# (Problem.STAV_ZADANY, Problem.STAV_VYRESENY):
# errors.append(ValidationError('Úloha %(uloha)s není zadaná ani vyřešená', params={'uloha':ch.uloha}))
# if isinstance(ch, ReseniNode):
# for problem in ch.reseni.problem_set:
# if problem not in \
# (Problem.STAV_ZADANY, Problem.STAV_VYRESENY):
# errors.append(ValidationError('Problém %s není zadaný ani vyřešený', code=problem))
# if errors:
# errors.append(ValidationError(mark_safe('<b>Pokud chceš učinit všechny problémy, co nejsou zadané ani vyřešené, zadanými a číslo zveřejnit, můžeš to udělat pomocí akce v <a href="/admin/seminar/cislo">seznamu čísel</a></b>')))
ValidationError('Úloha %(uloha)s není zadaná ani vyřešená',params={'uloha':ch}))
iferrors:
errors.append(ValidationError(mark_safe(
'<b>Pokud chceš učinit všechny problémy, co nejsou zadané ani vyřešené, zadanými a číslo zveřejnit, můžeš to udělat pomocí akce v <a href="/admin/seminar/cislo">seznamu čísel</a></b>')))
ifself.cleaned_data.get('datum_vydani')==None:
self.add_error('datum_vydani','Číslo určené ke zveřejnění nemá nastavené datum vydání')