From 0747ede60a2e73beebf09335638232bfc56c30bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Sun, 11 Jun 2023 19:52:22 +0200 Subject: [PATCH] =?UTF-8?q?move:=20aktivn=C3=AD=20a=20neaktivn=C3=AD=20org?= =?UTF-8?q?aniz=C3=A1to=C5=99i=20do=20OrganizatorManager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- personalni/models/organizator.py | 15 +++++++++++++++ seminar/views/views_all.py | 15 +++------------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/personalni/models/organizator.py b/personalni/models/organizator.py index d90c5194..dece874e 100644 --- a/personalni/models/organizator.py +++ b/personalni/models/organizator.py @@ -8,8 +8,23 @@ from mamweb.models.base import SeminarModelBase from .osoba import Osoba +class _OrganizatorManager(models.Manager): + def aktivni(self, datum=timezone.now()): + return self.exclude( + organizuje_do__isnull=False, + organizuje_do__lt=datum + ).order_by('osoba__jmeno') + + def neaktivni(self, datum=timezone.now()): + return self.exclude( + id__in=self.aktivni(datum) + ).order_by('-organizuje_do') + + @reversion.register(ignore_duplicates=True) class Organizator(SeminarModelBase): + objects = _OrganizatorManager() + osoba = models.OneToOneField( Osoba, verbose_name='osoba', related_name='org', help_text='osobní údaje organizátora', null=False, blank=False, diff --git a/seminar/views/views_all.py b/seminar/views/views_all.py index 49b38d31..065ad958 100644 --- a/seminar/views/views_all.py +++ b/seminar/views/views_all.py @@ -100,7 +100,7 @@ def get_problemy_k_tematu(tema): # nastaveni = get_object_or_404(Nastaveni) # context = super().get_context_data(**kwargs) # verejne = nastaveni.aktualni_cislo.verejne() -# context['verejne'] = verejne +# context['verejne'] = verejne # return context def AktualniZadaniView(request): @@ -273,18 +273,10 @@ class StareNovinkyView(generic.ListView): ### Co je M&M -# Organizatori -def aktivniOrganizatori(datum=timezone.now()): - return Organizator.objects.exclude( - organizuje_do__isnull=False, - organizuje_do__lt=datum - ).order_by('osoba__jmeno') - - class CojemamOrganizatoriView(generic.ListView): model = Organizator template_name = 'seminar/cojemam/organizatori.html' - queryset = aktivniOrganizatori() + queryset = Organizator.objects.aktivni() def get_context_data(self, **kwargs): context = super(CojemamOrganizatoriView, self).get_context_data(**kwargs) @@ -295,8 +287,7 @@ class CojemamOrganizatoriView(generic.ListView): class CojemamOrganizatoriStariView(generic.ListView): model = Organizator template_name = 'seminar/cojemam/organizatori.html' - queryset = Organizator.objects.exclude( - id__in=aktivniOrganizatori()).order_by('-organizuje_do') + queryset = Organizator.objects.neaktivni() ### Archiv