temata | prispevek | zakladni zobrazeni prispevku
Zobrazeni prispevku na strankach, potrebuje doladit konecnou podobu nadpisu. Pokud neni zaskrtnuto zverejnit haze 404 a orgum se zobrazi, pokud je zaskrtnuto zobrazit zobrazi se vsem stejne
This commit is contained in:
		
							parent
							
								
									abd392e1fe
								
							
						
					
					
						commit
						285eaaa672
					
				
					 3 changed files with 50 additions and 1 deletions
				
			
		
							
								
								
									
										22
									
								
								seminar/templates/seminar/archiv/prispevek.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								seminar/templates/seminar/archiv/prispevek.html
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,22 @@ | |||
| {% extends "seminar/archiv/base_temata.html" %} | ||||
| 
 | ||||
| {% block title %} | ||||
|   {{prispevek.nazev}} | ||||
| {% endblock title %} | ||||
| 
 | ||||
| {% block content %} | ||||
|   {% if not prispevek.zverejnit %}<div class="mam-org-only">{% endif %} | ||||
|     <h1>Příspěvek k tématu {{prispevek.problem.nazev}} | ||||
|         řešitele {{prispevek.reseni.resitel}}<h1> | ||||
| 
 | ||||
|     {% if prispevek.text_org %} | ||||
|       <h2>Organizátorský komentář:</h2> | ||||
|       <i>{% autoescape off %}{{prispevek.text_org}}{% endautoescape %}</i> | ||||
|       {% endif %} | ||||
|    | ||||
|     {% if prispevek.text_resitel %} | ||||
|       <h2>Text od Řešitele</h2> | ||||
|       {% autoescape off %}{{prispevek.text_resitel}}{% endautoescape %} | ||||
|     {% endif %} | ||||
|   {% if not prispevek.zverejnit %}</div>{% endif %} | ||||
| {% endblock content %} | ||||
|  | @ -16,6 +16,7 @@ urlpatterns = [ | |||
|     url(r'^rocnik/(?P<rocnik>\d+)/$', views.RocnikView.as_view(), name='seminar_rocnik'), | ||||
|     url(r'^cislo/(?P<rocnik>\d+)\.(?P<cislo>[0-9-]+)/$', views.CisloView.as_view(), name='seminar_cislo'), | ||||
|     url(r'^problem/(?P<pk>\d+)/$', views.ProblemView.as_view(), name='seminar_problem'), | ||||
|     url(r'^problem/(?P<pk>\d+)/(?P<prispevek>\d+)/$', views.PrispevekView.as_view(), name='seminar_problem_prispevek'), | ||||
| 
 | ||||
|     url(r'^soustredeni/probehlo/$', views.SoustredeniListView.as_view(), | ||||
|         name = 'seminar_seznam_soustredeni'), | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ from django.db.models import Q | |||
| from django.views.decorators.csrf import ensure_csrf_cookie | ||||
| from django.contrib.auth import authenticate, login | ||||
| 
 | ||||
| from .models import Problem, Cislo, Reseni, Nastaveni, Rocnik, Soustredeni, Organizator, Resitel, Novinky, Soustredeni_Ucastnici, Pohadka | ||||
| from .models import Problem, Cislo, Reseni, Nastaveni, Rocnik, Soustredeni, Organizator, Resitel, Novinky, Soustredeni_Ucastnici, Pohadka, Prispevek | ||||
| from .models import VysledkyZaCislo, VysledkyKCisluZaRocnik, VysledkyKCisluOdjakziva | ||||
| from . import utils | ||||
| 
 | ||||
|  | @ -247,6 +247,32 @@ class ProblemView(generic.DetailView): | |||
|             context['reseni'] = Reseni.objects.filter(problem=context['problem']).select_related('resitel').order_by('resitel__prijmeni') | ||||
|         return context | ||||
| 
 | ||||
| class PrispevekView(generic.DetailView): | ||||
|     model = Prispevek | ||||
|     template_name = 'seminar/archiv/prispevek.html' | ||||
|      | ||||
|     # Vlastni ziskavani objektu z databaze podle prispevku | ||||
|     # pokud je prispevek neverejny zobrazi se jenom orgum | ||||
|     def get_object(self, queryset=None): | ||||
|         if queryset is None: | ||||
|             queryset = self.get_queryset() | ||||
|         problem_arg = self.kwargs.get('pk') | ||||
|         prispevek_arg = self.kwargs.get('prispevek') | ||||
|         queryset = queryset.filter(pk=prispevek_arg) | ||||
| 
 | ||||
|         print queryset | ||||
| 
 | ||||
|         try: | ||||
|             obj = queryset.get() | ||||
|         except queryset.model.DoesNotExist: | ||||
|             raise Http404(_("No %(verbose_name)s found matching the query") % | ||||
|                           {'verbose_name': queryset.model._meta.verbose_name}) | ||||
| 
 | ||||
|         if self.request.user.is_staff or obj.zverejnit: | ||||
|             return obj | ||||
|         else: | ||||
|             raise Http404() | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| class RadekVysledkovky(object): | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Bc. Petr Pecha
						Bc. Petr Pecha