Reviewed-on: #6
This commit is contained in:
		
						commit
						4f773dbfe3
					
				
					 5 changed files with 1 additions and 110 deletions
				
			
		|  | @ -40,7 +40,6 @@ | |||
|           <li><a href="obalky.pdf">Obálky (PDF)</a></li> | ||||
|           <li><a href="tituly.tex" download>Tituly (TeX)</a></li> | ||||
|           <li><a href="vysledkovka.tex" download>Výsledkovka (TeX)</a></li> | ||||
|           <li><a href="obalkovani">Obálkování</a></li> | ||||
|           <li><a href="odmeny/{{prevcislo.rocnik.rocnik}}.{{prevcislo.poradi}}/">Odměny</a></li> | ||||
|         </ul> | ||||
|       </div> | ||||
|  |  | |||
|  | @ -1,33 +0,0 @@ | |||
| {% extends "base.html" %} | ||||
| 
 | ||||
| {% block content %} | ||||
|   <h1> | ||||
|     {% block nadpis1a %} | ||||
|       Obálkování {{ cislo }} | ||||
|     {% endblock %} | ||||
|   </h1> | ||||
| 
 | ||||
|   Obálkovat se budou tyto problémy: | ||||
|   <ul> | ||||
|     {% for p in problemy %} | ||||
| 
 | ||||
|       <li> {{ p.kod_v_rocniku }} {{ p }} | ||||
|     {% endfor %} | ||||
|   </ul> | ||||
| 
 | ||||
|   {% for r in reseni %} | ||||
|     {% ifchanged r.resitel %} | ||||
|       {% if not forloop.first %} | ||||
|         </ul> | ||||
|       {% endif %} | ||||
|       <h4>{{ r.resitel }}</h4> | ||||
|         <ul> | ||||
|     {% endifchanged %} | ||||
| 
 | ||||
|     <li> | ||||
|       {{ r.problem.kod_v_rocniku }} {{ r.problem.nazev }} ({{ r.body }}) | ||||
| 
 | ||||
|   {% endfor %} | ||||
|   </ul> | ||||
| 
 | ||||
| {% endblock content %} | ||||
|  | @ -1,30 +0,0 @@ | |||
| {% extends "base.html" %} | ||||
| 
 | ||||
| {% block content %} | ||||
|   <h1> | ||||
|     {% block nadpis1a %} | ||||
|       Obálkování {{ cislo }} | ||||
|     {% endblock %} | ||||
|   </h1> | ||||
|   <ul> | ||||
|   {% for reseni in object_list %} | ||||
| 	{% ifchanged reseni.resitele %} | ||||
| 		{% if not forloop.first %} | ||||
| 		 </ul> | ||||
| 		{% endif %} | ||||
| 		<h4>{% for resitel in reseni.resitele.all %}{{resitel.osoba}},{% endfor %}</h4> | ||||
| 	<ul> | ||||
| 	{% endifchanged %} | ||||
| 
 | ||||
|   <li>Celkem {{reseni.hodnoceni__body__sum}} bodů z {{reseni.hodnoceni__count}} hodnocení | ||||
| 	<ul> | ||||
| 		{% for h in reseni.hodnoceni_set.all %} | ||||
| 		<li> {{ h.problem }}: {{ h.body }}b </li> | ||||
| 		{% endfor %} | ||||
| 	</ul> | ||||
|   </li> | ||||
|   {% endfor %} | ||||
|   </ul> | ||||
| 
 | ||||
| 
 | ||||
| {% endblock content %} | ||||
|  | @ -23,7 +23,6 @@ Soubor sloužící jako „router“, tj. zde se definují url adresy a na co uk | |||
| 	- ``cislo/<int:rocnik>.<str:cislo>/obalky.pdf`` (seminar_cislo_obalky) :func:`~seminar.views.views_all.cisloObalkyView` | ||||
| 	- ``cislo/<int:rocnik>.<str:cislo>/tituly.tex`` (seminar_cislo_titul) :func:`~seminar.views.views_all.TitulyView` | ||||
| 	- ``stav`` (stav_databaze) :func:`~seminar.views.views_all.StavDatabazeView` | ||||
| 	- ``cislo/<int:rocnik>.<str:cislo>/obalkovani`` (seminar_cislo_resitel_obalkovani) :class:`~seminar.views.views_all.ObalkovaniView` | ||||
| 	- ``cislo/<int:trocnik>.<str:tcislo>/odmeny/<int:frocnik>.<str:fcislo>/`` (seminar_archiv_odmeny) :class:`~seminar.views.views_all.OdmenyView` | ||||
| - Další | ||||
| 	- `` `` (titulni_strana) :class:`~seminar.views.views_all.TitulniStranaView` | ||||
|  | @ -102,11 +101,6 @@ urlpatterns = [ | |||
| 		org_required(views.StavDatabazeView), | ||||
| 		name='stav_databaze' | ||||
| 	), | ||||
| 	path( | ||||
| 		'cislo/<int:rocnik>.<str:cislo>/obalkovani', | ||||
| 		org_required(views.ObalkovaniView.as_view()), | ||||
| 		name='seminar_cislo_resitel_obalkovani' | ||||
| 	), | ||||
| 	path( | ||||
| 		'cislo/<int:trocnik>.<str:tcislo>/odmeny/<int:frocnik>.<str:fcislo>/', | ||||
| 		org_required(views.OdmenyView.as_view()), | ||||
|  |  | |||
|  | @ -53,23 +53,6 @@ logger = logging.getLogger(__name__) | |||
| def get_problemy_k_tematu(tema): | ||||
| 	return Problem.objects.filter(nadproblem = tema) | ||||
| 
 | ||||
| class ObalkovaniView(generic.ListView): | ||||
| 	template_name = 'seminar/org/obalkovani.html' | ||||
| 
 | ||||
| 	def get_queryset(self): | ||||
| 		rocnik = get_object_or_404(Rocnik,rocnik=self.kwargs['rocnik']) | ||||
| 		cislo = get_object_or_404(Cislo,rocnik=rocnik,poradi=self.kwargs['cislo']) | ||||
| 		self.cislo = cislo | ||||
| 		self.hodnoceni = s.Hodnoceni.objects.filter(cislo_body=cislo) | ||||
| 		self.reseni = Reseni.objects.filter(hodnoceni__in = self.hodnoceni).annotate(Sum('hodnoceni__body')).annotate(Count('hodnoceni')).order_by('resitele__osoba') | ||||
| 		return self.reseni | ||||
| 
 | ||||
| 	def get_context_data(self, **kwargs): | ||||
| 		context = super(ObalkovaniView, self).get_context_data(**kwargs) | ||||
| 		print(self.cislo) | ||||
| 		context['cislo'] = self.cislo | ||||
| 		return context | ||||
| 
 | ||||
| 
 | ||||
| # FIXME: Pozor, níž je ještě jeden ProblemView! | ||||
| #class ProblemView(generic.DetailView): | ||||
|  | @ -590,28 +573,6 @@ def obalkyView(request, resitele): | |||
| 	return response | ||||
| 
 | ||||
| 
 | ||||
| def oldObalkovaniView(request, rocnik, cislo): | ||||
| 	rocnik = Rocnik.objects.get(rocnik=rocnik) | ||||
| 	cislo = Cislo.objects.get(rocnik=rocnik, cislo=cislo) | ||||
| 
 | ||||
| 	reseni = ( | ||||
| 		Reseni.objects.filter(cislo_body=cislo) | ||||
| 		.order_by( | ||||
| 			'resitel__prijmeni', | ||||
| 			'resitel__jmeno', | ||||
| 			'problem__typ', | ||||
| 			'problem__kod' | ||||
| 		) | ||||
| 	) | ||||
| 
 | ||||
| 	problemy = sorted(set(r.problem for r in reseni), key=lambda p: (p.typ, p.kod)) | ||||
| 	return render( | ||||
| 		request, | ||||
| 		'seminar/archiv/cislo_obalkovani.html', | ||||
| 		{'cislo': cislo, 'problemy': problemy, 'reseni': reseni} | ||||
| 	) | ||||
| 
 | ||||
| 
 | ||||
| ### Tituly | ||||
| def TitulyViewRocnik(request, rocnik): | ||||
| 	return TitulyView(request, rocnik, None) | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue