Merge branch 'master' into korekturovatko
| Before Width: | Height: | Size: 697 B After Width: | Height: | Size: 1.1 KiB | 
| Before Width: | Height: | Size: 717 B After Width: | Height: | Size: 1.4 KiB | 
| Before Width: | Height: | Size: 702 B After Width: | Height: | Size: 1.1 KiB | 
| Before Width: | Height: | Size: 617 B After Width: | Height: | Size: 1.1 KiB | 
|  | @ -7,6 +7,7 @@ import locale | ||||||
| from django.contrib import admin | from django.contrib import admin | ||||||
| from django.contrib.admin import AdminSite | from django.contrib.admin import AdminSite | ||||||
| from django.contrib.flatpages.models import FlatPage | from django.contrib.flatpages.models import FlatPage | ||||||
|  | import logging | ||||||
|   |   | ||||||
| # Note: we are renaming the original Admin and Form as we import them! | # Note: we are renaming the original Admin and Form as we import them! | ||||||
| from django.contrib.flatpages.admin import FlatPageAdmin as FlatPageAdminOld | from django.contrib.flatpages.admin import FlatPageAdmin as FlatPageAdminOld | ||||||
|  | @ -56,8 +57,13 @@ def get_app_list(self, request, app_label=None): | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 	# Sort the models alphabetically within each app. | 	# Sort the models alphabetically within each app. | ||||||
| 	for app in app_list: | 	try: # na macu nefunguje locale.strxfrm :-/ proto je tu try except block | ||||||
| 		app['models'].sort(key=lambda x: locale.strxfrm(x['name'].lower())) | 		for app in app_list: | ||||||
|  | 			app['models'].sort(key=lambda x: locale.strxfrm(x['name'].lower())) | ||||||
|  | 	except OSError as e: | ||||||
|  | 		# locale.strxfrm nefunguje na macu... :-/ -> neprovede se řazení | ||||||
|  | 		logger = logging.getLogger(__name__) | ||||||
|  | 		logger.error(e) | ||||||
| 
 | 
 | ||||||
| 	return app_list | 	return app_list | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,17 @@ | ||||||
|  | \ifnum\mmrocnik=0{{vysledkovka.cislo.rocnik.rocnik}} \else\TODO[Ročník výsledkovky se neshoduje s ročníkem čísla! Pokud je to tak správně, smaž tento řádek.]\par\fi | ||||||
|  | \ifnum\mmcislo=0{{vysledkovka.cislo.poradi|add:1}} \else\TODO[Číslo výsledkovky se neshoduje s pořadovým číslem čísla! Nestáhnul jsi špatnou výsledkovku? Pokud je to tak správně, smaž tento řádek.]\par\fi | ||||||
|  | {% if rocnik %}\ifmmposledni\else\TODO[Importoval jsi výsledkovku posledního čísla do čísla, které není poslední (v headru nebylo \texttt{documentclass[\ldots,posledni]\{mam\}})! Pokud je to tak správně, smaž tento řádek.]\par\fi{% endif %} | ||||||
|  | % | ||||||
|  | \VysledkyCisla{Výsledky {% if vysledkovka.od_deadlinu %}2.~deadlinu {{vysledkovka.od_deadlinu.cislo.poradi}}.~čísla a~{% endif %}{% if rocnik %}celého{% else %}1.~deadlinu{% endif %} {{vysledkovka.cislo.poradi}}.~čísla} | ||||||
|  | \vspace{-1em}\nobreak | ||||||
|  | \begin{center} | ||||||
|  | % | ||||||
| \setlength{\tabcolsep}{3pt} | \setlength{\tabcolsep}{3pt} | ||||||
|  | \renewcommand{\arraystretch}{1.2} | ||||||
|  | \noindent\small | ||||||
|  | % | ||||||
| {% if vysledkovka.je_nejake_ostatni %}\global\vysledkovkaostatnitrue{% else %}\global\vysledkovkaostatnifalse{% endif %} | {% if vysledkovka.je_nejake_ostatni %}\global\vysledkovkaostatnitrue{% else %}\global\vysledkovkaostatnifalse{% endif %} | ||||||
|  | {% if vysledkovka.od_deadlinu %}\global\VysledkovkaJedenDeadlinefalse{% else %}\global\VysledkovkaJedenDeadlinetrue{% endif %} | ||||||
| \begin{longtable}{|r|l|c|r|{% for p in vysledkovka.temata_a_spol %}c@{\hskip.5em}{% endfor %}{% if vysledkovka.je_nejake_ostatni %}|c@{\hskip.5em}{% endif %}|r|r|}\hline | \begin{longtable}{|r|l|c|r|{% for p in vysledkovka.temata_a_spol %}c@{\hskip.5em}{% endfor %}{% if vysledkovka.je_nejake_ostatni %}|c@{\hskip.5em}{% endif %}|r|r|}\hline | ||||||
| & & & & \multicolumn{ {{ vysledkovka.temata_a_spol|length}} }{c|}{\textbf{Témata}} & & {% if vysledkovka.je_nejake_ostatni %}&{\hskip.5em}{% endif %} \\\textbf{Poř.}& \textbf{Jméno}& \textbf{R.}& \raisebox{0.7mm}{$\sum_{-1}$}& {% for p in vysledkovka.temata_a_spol %}\textbf{ {{ p.kod_v_rocniku }} }&{% endfor %}{% if vysledkovka.je_nejake_ostatni %}\textbf{O}&{% endif %}\raisebox{0.7mm}{$\sum_0$}&\raisebox{0.7mm}{$\sum_1$}\\\hline | & & & & \multicolumn{ {{ vysledkovka.temata_a_spol|length}} }{c|}{\textbf{Témata}} & & {% if vysledkovka.je_nejake_ostatni %}&{\hskip.5em}{% endif %} \\\textbf{Poř.}& \textbf{Jméno}& \textbf{R.}& \raisebox{0.7mm}{$\sum_{-1}$}& {% for p in vysledkovka.temata_a_spol %}\textbf{ {{ p.kod_v_rocniku }} }&{% endfor %}{% if vysledkovka.je_nejake_ostatni %}\textbf{O}&{% endif %}\raisebox{0.7mm}{$\sum_0$}&\raisebox{0.7mm}{$\sum_1$}\\\hline | ||||||
| \endhead | \endhead | ||||||
|  | @ -8,3 +20,4 @@ | ||||||
| {% for rv in vysledkovka.radky_vysledkovky %}{{rv.poradi}}&{% if rv.titul %}\titul{ {{ rv.titul}}}{% endif %}{{rv.resitel.osoba.jmeno|slice:":1"}}. {{rv.resitel.osoba.prijmeni}}&{{rv.rocnik_resitele|default:""}}&{{rv.body_celkem_odjakziva}}&{% for b in rv.body_za_temata_seznam %}{{b}}&{% endfor %}{{rv.body_cislo}}&{{rv.body_rocnik|default:0}}\\ | {% for rv in vysledkovka.radky_vysledkovky %}{{rv.poradi}}&{% if rv.titul %}\titul{ {{ rv.titul}}}{% endif %}{{rv.resitel.osoba.jmeno|slice:":1"}}. {{rv.resitel.osoba.prijmeni}}&{{rv.rocnik_resitele|default:""}}&{{rv.body_celkem_odjakziva}}&{% for b in rv.body_za_temata_seznam %}{{b}}&{% endfor %}{{rv.body_cislo}}&{{rv.body_rocnik|default:0}}\\ | ||||||
| {% endfor %} | {% endfor %} | ||||||
| \end{longtable} | \end{longtable} | ||||||
|  | \end{center} | ||||||
|  |  | ||||||
|  | @ -1,14 +1,27 @@ | ||||||
| {% with lb="{" %} | {% with lb="{" %} | ||||||
| {% with rb="}" %} | {% with rb="}" %} | ||||||
| {% with vysledkovka=vysledkovka_neverejna %} | {% with vysledkovka=vysledkovka_neverejna %} | ||||||
|  | % | ||||||
|  | \ifnum\mmrocnik=0{{rocnik.rocnik}} \else\TODO[Ročník výsledkovky se neshoduje s ročníkem čísla! Pokud je to tak správně, smaž tento řádek.]\par\fi | ||||||
|  | \ifmmposledni\else\TODO[Importoval jsi výsledkovku ročníku do čísla, které není poslední (v headru nebylo \texttt{documentclass[\ldots,posledni]\{mam\}})! Pokud je to tak správně, smaž tento řádek.]\par\fi | ||||||
|  | % | ||||||
|  | \VysledkyRocniku{Výsledková listina {{rocnik.rocnik}}.~ročníku} | ||||||
|  | \vspace{-1em}\nobreak | ||||||
|  | \begin{center} | ||||||
|  | % | ||||||
| \setlength{\tabcolsep}{3pt} | \setlength{\tabcolsep}{3pt} | ||||||
|  | \renewcommand{\arraystretch}{1.2} | ||||||
|  | \noindent | ||||||
|  | % | ||||||
| \begin{longtable}{|r|l|c|r|{% for cislo in vysledkovka.cisla_rocniku %}c{% if not forloop.last %}@{\hskip.5em}{% endif %}{% endfor %}|r|}\hline | \begin{longtable}{|r|l|c|r|{% for cislo in vysledkovka.cisla_rocniku %}c{% if not forloop.last %}@{\hskip.5em}{% endif %}{% endfor %}|r|}\hline | ||||||
| & & & & \multicolumn{{ lb }}{{ vysledkovka.cisla_rocniku|length }}}{c|}{\textbf{Číslo}} & \\\textbf{Poř.} & \textbf{Jméno} & \textbf{R.} & \raisebox{0.7mm}{$\sum_{-1}$} & {% for cislo in vysledkovka.cisla_rocniku %}\textbf{{ lb }}{{ cislo.poradi }}{{ rb }} & {% endfor %}\raisebox{0.7mm}{$\sum_1$} \\\hline | & & & & \multicolumn{{ lb }}{{ vysledkovka.cisla_rocniku|length }}}{c|}{\textbf{Číslo}} & \\\textbf{Poř.} & \textbf{Jméno} & \textbf{R.} & \raisebox{0.7mm}{$\sum_{-1}$} & {% for cislo in vysledkovka.cisla_rocniku %}\textbf{{ lb }}{{ cislo.poradi }}{{ rb }} & {% endfor %}\raisebox{0.7mm}{$\sum_1$} \\\hline | ||||||
| \endhead | \endhead | ||||||
| \hline | \hline | ||||||
| \endfoot | \endfoot | ||||||
| {% for rv in vysledkovka.radky_vysledkovky %}{{ rv.poradi }} & {% if rv.titul %}\titul{{ lb }}{{ rv.titul }}}~{% endif %}{{ rv.resitel.osoba.jmeno|slice:":1" }}.~{{ rv.resitel.osoba.prijmeni }} & {% if rv.rocnik_resitele %}{{ rv.rocnik_resitele }}{% endif %} & {{ rv.body_celkem_odjakziva }} {% for b in rv.body_cisla_seznam %} & {{ b }}{% endfor %} & {{ rv.body_rocnik }} \\ | {% for rv in vysledkovka.radky_vysledkovky %}{{ rv.poradi }} & {% if rv.titul %}\titul{{ lb }}{{ rv.titul }}}~{% endif %}{{ rv.resitel.osoba.jmeno|slice:":1" }}.~{{ rv.resitel.osoba.prijmeni }} & {% if rv.rocnik_resitele %}{{ rv.rocnik_resitele }}{% endif %} & {{ rv.body_celkem_odjakziva }} {% for b in rv.body_cisla_seznam %} & {{ b }}{% endfor %} & {{ rv.body_rocnik }} \\ | ||||||
| {% endfor %}\end{longtable} | {% endfor %} | ||||||
|  | \end{longtable} | ||||||
|  | \end{center} | ||||||
| {% endwith %} | {% endwith %} | ||||||
| {% endwith %} | {% endwith %} | ||||||
| {% endwith %} | {% endwith %} | ||||||
|  |  | ||||||
|  | @ -1,3 +1,10 @@ | ||||||
|  | {% if cislo is None %} | ||||||
|  | \ifmmposledni\else\AtBeginDocument{\TODO[Importoval jsi tituly posledního čísla do čísla, které není poslední (v headru nebylo \texttt{documentclass[\ldots,posledni]\{mam\}})! Pokud je to tak správně, smaž tento řádek v \texttt{tituly.tex}.]\par}\fi | ||||||
|  | {% else %} | ||||||
|  | \ifmmposledni\AtBeginDocument{\TODO[Importoval jsi průběžné tituly do posledního čísla (v headru bylo \texttt{documentclass[\ldots,posledni]\{mam\}})! Pokud je to tak správně, smaž tento řádek v \texttt{tituly.tex}.]\par}\fi | ||||||
|  | \ifnum\mmcislo=0{{cislo|add:1}} \else\AtBeginDocument{\TODO[Číslo titulů se neshoduje s pořadovým číslem čísla! Nestáhnul jsi špatné tituly? Pokud je to tak správně, smaž tento řádek v \texttt{tituly.tex}.]\par}\fi | ||||||
|  | {% endif %} | ||||||
|  | 
 | ||||||
| {% if broken %} | {% if broken %} | ||||||
| POZOR! Kolize jmen! Dva řešitelé mají stejné makro! | POZOR! Kolize jmen! Dva řešitelé mají stejné makro! | ||||||
| {% endif %} | {% endif %} | ||||||
|  |  | ||||||
|  | @ -18,7 +18,7 @@ | ||||||
| 	Termíny pro odeslání řešení {{ac.poradi}}. série:<br> | 	Termíny pro odeslání řešení {{ac.poradi}}. série:<br> | ||||||
| 
 | 
 | ||||||
|     {% for deadline in ac.deadline_v_cisle.all %} |     {% for deadline in ac.deadline_v_cisle.all %} | ||||||
|         {% if deadline.typ == deadline.TYP_SOUS or deadline.typ == deadline.TYP_PRVNI_A_SOUS %} |         {% if deadline.typ == deadline.TYP_SOUS or deadline.typ == deadline.TYP_PRVNI_A_SOUS or deadline.typ == deadline.TYP_CISLA_A_SOUS %} | ||||||
|                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> pro účast na soustředění<br> |                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> pro účast na soustředění<br> | ||||||
|         {% endif %} |         {% endif %} | ||||||
| 
 | 
 | ||||||
|  | @ -26,7 +26,7 @@ | ||||||
|                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> pro otištění v dalším čísle<br> |                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> pro otištění v dalším čísle<br> | ||||||
|         {% endif %} |         {% endif %} | ||||||
| 
 | 
 | ||||||
|         {% if deadline.typ == deadline.TYP_CISLA %} |         {% if deadline.typ == deadline.TYP_CISLA or deadline.typ == deadline.TYP_CISLA_A_SOUS %} | ||||||
|                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> definitivní deadline<br> |                 <span class="AKTUALNI_ZADANI_datum">{{deadline.deadline.date}}</span> definitivní deadline<br> | ||||||
|         {% endif %} |         {% endif %} | ||||||
|     {% endfor %} |     {% endfor %} | ||||||
|  |  | ||||||
|  | @ -523,7 +523,7 @@ def TitulyView(request, rocnik, cislo): | ||||||
| 			jmenovci = True | 			jmenovci = True | ||||||
| 
 | 
 | ||||||
| 	return render(request, 'tvorba/archiv/tituly.tex', | 	return render(request, 'tvorba/archiv/tituly.tex', | ||||||
| 				  {'resitele': resitele,'jmenovci':jmenovci},content_type="text/plain") | 				  {'resitele': resitele,'jmenovci':jmenovci,'cislo':cislo},content_type="text/plain") | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ### Články | ### Články | ||||||
|  |  | ||||||