Novinky: I staré novinky chceme všechny
Fun fact: předtím neveřejné novinky byly vidět jen na titulní stránce, v seznamu starších ne...
This commit is contained in:
		
							parent
							
								
									3e94572e6e
								
							
						
					
					
						commit
						b4d4a7c917
					
				
					 1 changed files with 18 additions and 8 deletions
				
			
		|  | @ -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 | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Pavel 'LEdoian' Turinsky
						Pavel 'LEdoian' Turinsky