diff --git a/seminar/models.py b/seminar/models.py index 220e71ec..cc06cf36 100644 --- a/seminar/models.py +++ b/seminar/models.py @@ -459,7 +459,9 @@ class Problem(SeminarModelBase): return force_unicode(u"%s.u%s" % (self.cislo_zadani.cislo, self.kod,)) if self.typ == self.TYP_TEMA: return force_unicode(u"t%s" % (self.kod,)) - return ' Není zadaný ' + else: + return force_unicode(self.kod) + return u'' def nazev_typu(self): return dict(self.TYP_CHOICES)[self.typ] diff --git a/seminar/views.py b/seminar/views.py index eb3e0616..ce698fb4 100644 --- a/seminar/views.py +++ b/seminar/views.py @@ -265,7 +265,14 @@ class CisloView(generic.DetailView): resene_problemy = Problem.objects.filter(cislo_reseni=context['cislo']).filter(typ__in=typy_skutecne_zadanych).order_by('cislo_zadani__cislo', 'kod') - problemy = sorted(set(r.problem for r in reseni), key=lambda x:(0 if x.typ==Problem.TYP_ULOHA else 1, x.kod_v_rocniku())) + poradi_typu = { + Problem.TYP_ULOHA: 1, + Problem.TYP_SERIAL: 2, + Problem.TYP_ORG_CLANEK: 3, + Problem.TYP_TEMA: 4, + Problem.TYP_RES_CLANEK: 5 + } + problemy = sorted(set(r.problem for r in reseni), key=lambda x:(poradi_typu[x.typ], x.kod_v_rocniku())) #setridi problemy podle typu a poradi zadani problem_index = {} for i in range(len(problemy)):