|
|
@ -227,16 +227,25 @@ class AktualniZadaniView(TreeNodeView): |
|
|
|
|
|
|
|
### Titulni strana |
|
|
|
|
|
|
|
def spravne_novinky(request): |
|
|
|
""" |
|
|
|
Vrátí správný QuerySet novinek, tedy ten, který daný uživatel smí vidět. |
|
|
|
Tj. Organizátorům všechny, ostatním jen veřejné |
|
|
|
""" |
|
|
|
user = request.user |
|
|
|
# Využíváme líné vyhodnocování QuerySetů |
|
|
|
qs = Novinky.objects.all() |
|
|
|
# TODO: Tohle by mělo spíš kontrolovat, že je/není někdo org, než že může do Adminu. |
|
|
|
if not user.is_staff: |
|
|
|
qs = qs.filter(zverejneno=True) |
|
|
|
return qs.order_by('-datum') |
|
|
|
|
|
|
|
|
|
|
|
class TitulniStranaView(generic.ListView): |
|
|
|
template_name='seminar/titulnistrana.html' |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
# Pro nepřihlášené uživatele chceme novinky jen veřejné |
|
|
|
# Využíváme líné vyhodnocování QuerySetů |
|
|
|
qs = Novinky.objects.all() |
|
|
|
if not self.request.user.is_authenticated: |
|
|
|
qs = qs.filter(zverejneno=True) |
|
|
|
return qs.order_by('-datum')[:5] |
|
|
|
return spravne_novinky(self.request)[:5] |
|
|
|
|
|
|
|
def get_context_data(self, **kwargs): |
|
|
|
context = super(TitulniStranaView, self).get_context_data(**kwargs) |
|
|
@ -273,9 +282,10 @@ class TitulniStranaView(generic.ListView): |
|
|
|
return context |
|
|
|
|
|
|
|
class StareNovinkyView(generic.ListView): |
|
|
|
model = Novinky |
|
|
|
template_name = 'seminar/stare_novinky.html' |
|
|
|
queryset = Novinky.objects.filter(zverejneno=True).order_by('-datum') |
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
return spravne_novinky(self.request) |
|
|
|
|
|
|
|
### Co je M&M |
|
|
|
|
|
|
|