Browse Source

práce na archivu

middleware_test
Kateřina Čížková 5 years ago
parent
commit
835f35a44c
  1. 5
      seminar/templates/seminar/archiv/cisla.html
  2. 9
      seminar/templates/seminar/archiv/cislo.html
  3. 28
      seminar/templates/seminar/archiv/rocnik.html
  4. 73
      seminar/views/views_all.py

5
seminar/templates/seminar/archiv/cisla.html

@ -38,7 +38,7 @@
Jednotlivá čísla: Jednotlivá čísla:
<ul> <ul>
{% for cislo in rocnik.cisla.all reversed %} {% for cislo in rocnik.cisla.all reversed %}
<li><a href='{{ cislo.verejne_url }}'>{{ cislo.poradi }}. číslo</a> {% if cislo.pdf %}(<a href='{{ cislo.pdf }}'>pdf</a>) {% endif %} <!-- FIXME: cislo.pdf--> <li><a href='{{ cislo.verejne_url }}'>{{ cislo.poradi }}. číslo</a> {% if cislo.pdf %}(<a href='{{ cislo.pdf.url }}'>pdf</a>) {% endif %}
{% empty %} {% empty %}
--- ---
{% endfor %} {% endfor %}
@ -49,7 +49,8 @@
</div> </div>
</div> </div>
</div> </div>
{# konec karty organizátora #}
{# konec karty ročníku #}
<hr> <hr>
</div> </div>

9
seminar/templates/seminar/archiv/cislo.html

@ -46,7 +46,7 @@
<li><a href="obalkovani">Obálkování</a></li> <li><a href="obalkovani">Obálkování</a></li>
</ul> </ul>
</div> </div>
{% endif %} {% endif %}
{% if cislo.verejna_vysledkovka %} {% if cislo.verejna_vysledkovka %}
<h2>Výsledkovka ({% now "jS F Y H:i" %})</h2> <h2>Výsledkovka ({% now "jS F Y H:i" %})</h2>
@ -86,7 +86,7 @@
</tr> </tr>
{% endfor %} {% endfor %}
</table> </table>
{% endif %} {% endif %}
{% if not cislo.verejna_vysledkovka and user.is_staff %} {% if not cislo.verejna_vysledkovka and user.is_staff %}
</div> </div>
@ -94,6 +94,5 @@
Čas: {% now "jS F Y H:i:s" %} Čas: {% now "jS F Y H:i:s" %}
</div> </div>
{% endblock content %} {% endblock content %}

28
seminar/templates/seminar/archiv/rocnik.html

@ -2,13 +2,20 @@
{% block content %} {% block content %}
<div> <div>
<h1> <h2>
{% block nadpis1a %}{% block nadpis1b %} {% block nadpis1a %}{% block nadpis1b %}
Ročník {{ rocnik.roman }} Ročník {{ rocnik }}
{% endblock %}{% endblock %} {% endblock %}{% endblock %}
</h1> </h2>
<p>Ročník číslo {{ rocnik.rocnik }} ({{ rocnik.prvni_rok }}/{{ rocnik.druhy_rok }}) {% if temata_v_rocniku %}
<h2>Témata</h2>
<ul>
{% for tema in temata_v_rocniku %}
<li>{% if tema.text_zadani %}<a href="{{ tema.verejne_url }}">{% endif %}{{ tema.kod_v_rocniku }}: {{ tema.nazev }}{% if tema.text_zadani %}</a>{% endif %}
{% endfor %}
</ul>
{% endif %}
<ul> <ul>
{% for c in rocnik.verejna_cisla %} {% for c in rocnik.verejna_cisla %}
@ -19,15 +26,6 @@
{% endfor %} {% endfor %}
</ul> </ul>
{% if temata_v_rocniku %}
<h2>Témata</h2>
<ul>
{% for tema in temata_v_rocniku %}
<li>{% if tema.text_zadani %}<a href="{{ tema.verejne_url }}">{% endif %}{{ tema.kod_v_rocniku }}: {{ tema.nazev }}{% if tema.text_zadani %}</a>{% endif %}
{% endfor %}
</ul>
{% endif %}
{% if vysledkovka %} {% if vysledkovka %}
{% if user.is_staff %} {% if user.is_staff %}
<div class='mam-org-only'> <div class='mam-org-only'>
@ -50,7 +48,3 @@
</div> </div>
{% endblock content %} {% endblock content %}

73
seminar/views/views_all.py

@ -320,32 +320,61 @@ class ArchivView(generic.ListView):
# slovník {(ročník, url obrázku)} # slovník {(ročník, url obrázku)}
urls ={} urls ={}
# for j, rocnik in enumerate(Rocnik.objects.all()):
# urls_rocnik = {}
# for i,c in enumerate(rocnik.cisla.all()):
# if not c.pdf:
# urls_rocnik[c.poradi] = op.join(settings.MEDIA_URL, "cislo", "png", "default.png")
# else:
# filename = os.path.split(c.pdf.file.name)[1].split(".")[0]
# png_filename = "{}.png".format(filename)
# # Pokud obrázek neexistuje nebo není aktuální, vytvoř jej
# png_path = op.join(png_dir, png_filename)
# if not op.exists(png_path) or \
# op.getmtime(png_path) < op.getmtime(c.pdf.path):
# subprocess.call([
# "convert",
# "-density", "300x300",
# "-geometry", "{}x{}".format(vyska, sirka),
# "-background", "white",
# "-flatten",
# "{}[0]".format(c.pdf.path), # titulní strana
# png_path
# ])
# urls_rocnik[c.poradi] = op.join(settings.MEDIA_URL, "cislo", "png", png_filename)
# urls[rocnik] = urls_rocnik
for i,c in enumerate(cisla): for i,c in enumerate(cisla):
if not c.pdf: if not c.pdf:
urls[c.rocnik] = op.join(settings.MEDIA_URL, "cislo", "png", "default.png") urls[c.rocnik] = op.join(settings.MEDIA_URL, "cislo", "png", "default.png")
else: else:
filename = os.path.split(c.pdf.file.name)[1].split(".")[0] filename = os.path.split(c.pdf.file.name)[1].split(".")[0]
png_filename = "{}.png".format(filename) png_filename = "{}.png".format(filename)
# Pokud obrázek neexistuje nebo není aktuální, vytvoř jej # Pokud obrázek neexistuje nebo není aktuální, vytvoř jej
png_path = op.join(png_dir, png_filename) png_path = op.join(png_dir, png_filename)
if not op.exists(png_path) or \ if not op.exists(png_path) or \
op.getmtime(png_path) < op.getmtime(c.pdf.path): op.getmtime(png_path) < op.getmtime(c.pdf.path):
subprocess.call([ subprocess.call([
"convert", "convert",
"-density", "300x300", "-density", "300x300",
"-geometry", "{}x{}".format(vyska, sirka), "-geometry", "{}x{}".format(vyska, sirka),
"-background", "white", "-background", "white",
"-flatten", "-flatten",
"{}[0]".format(c.pdf.path), # titulní strana "{}[0]".format(c.pdf.path), # titulní strana
png_path png_path
]) ])
urls[c.rocnik] = op.join(settings.MEDIA_URL, "cislo", "png", png_filename) urls[c.rocnik] = op.join(settings.MEDIA_URL, "cislo", "png", png_filename)
context["object_list"] = urls context["object_list"] = urls
print(context)
# for i, c in enumerate(cisla): # for i, c in enumerate(cisla):
# if not c.pdf: # if not c.pdf:
# continue # continue

Loading…
Cancel
Save