diff --git a/mamweb/urls.py b/mamweb/urls.py
index 46e0e292..64769071 100644
--- a/mamweb/urls.py
+++ b/mamweb/urls.py
@@ -18,6 +18,9 @@ urlpatterns = [
# Korekturovaci aplikace (ma vlastni podadresare)
url(r'^', include('korektury.urls')),
+
+ # Prednaskova aplikace (ma vlastni podadresare)
+ url(r'^', include('prednasky.urls')),
# Comments (interni i verejne)
url(r'^comments_dj/', include('django_comments.urls')),
diff --git a/prednasky/templates/prednasky/metaseznam_prednasek.html b/prednasky/templates/prednasky/metaseznam_prednasek.html
new file mode 100644
index 00000000..c6c00b96
--- /dev/null
+++ b/prednasky/templates/prednasky/metaseznam_prednasek.html
@@ -0,0 +1,26 @@
+{% extends "prednasky/Base.html" %}
+
+
+{% block header %}hlasovani{% endblock %}
+
+{% block nadpis1a %}{% block nadpis1b %}
+ Hlasování o přednáškách
+{% endblock %}{% endblock %}
+
+{% block content %}
+ {# Projdi vsechny seznamy #}
+
+
+ {% for seznam in object_list %}
+ -
+ {% if seznam.stav == 1 %} {# STAV_NAHRH = 1 #}
+ Návrh přednášek na soustředění {{seznam.soustredeni.misto}}
+ {% else %}
+ Seznam přednášek na soustředění {{seznam.soustredeni.misto}}
+ {% endif %}
+ Export
+
+ {% endfor %}
+
+{% endblock %}
+
diff --git a/prednasky/templates/prednasky/seznam_prednasek.html b/prednasky/templates/prednasky/seznam_prednasek.html
new file mode 100644
index 00000000..4d322a88
--- /dev/null
+++ b/prednasky/templates/prednasky/seznam_prednasek.html
@@ -0,0 +1,21 @@
+{% extends "prednasky/Base.html" %}
+
+
+{% block header %}seznam_prednasek{% endblock %}
+
+{% block nadpis1a %}{% block nadpis1b %}
+ Seznam přednášek
+{% endblock %}{% endblock %}
+
+{% block content %}
+
+
+ {# Projdi vsechny prednasky #}
+ {% for prednaska in object_list %}
+ -
+ {{prednaska.nazev}} ({{prednaska.obor}},{{prednaska.obtiznost}}) - {{prednaska.org}}
+
+ {% endfor %}
+
+{% endblock %}
+
diff --git a/prednasky/templates/prednasky/seznam_prednasek_export.txt b/prednasky/templates/prednasky/seznam_prednasek_export.txt
new file mode 100644
index 00000000..2defc91e
--- /dev/null
+++ b/prednasky/templates/prednasky/seznam_prednasek_export.txt
@@ -0,0 +1,21 @@
+{% block content %}
+{% spaceless %}
+{% for hlas in hlasovani %}
+hlas({{hlas.ucastnik}},{{hlas.prednaska.id}},{{hlas.body}})
+{% endfor %}
+{% for prednaska in prednasky %}
+prednaska({{prednaska.id}},{{prednaska.org.id}},{{prednaska.obtiznost}},{{prednaska.obor}})
+{% endfor %}
+{% for org in orgove %}
+org({{org.id}},4,0,15)
+{% endfor %}
+{% for org in orgove %}
+{{org.id}};{{org}}
+{% endfor %}
+{% for prednaska in prednasky %}
+{{prednaska.id}};{{prednaska.nazev}};{{prednaska.org.id}}
+{{prednaska.body}}
+{% endfor %}
+{% endspaceless %}
+{% endblock %}
+
diff --git a/prednasky/urls.py b/prednasky/urls.py
new file mode 100644
index 00000000..013db150
--- /dev/null
+++ b/prednasky/urls.py
@@ -0,0 +1,15 @@
+from django.conf.urls import * # NOQA
+from django.conf.urls import patterns, url
+from django.contrib.auth.decorators import user_passes_test
+from . import views
+
+staff_member_required = user_passes_test(lambda u: u.is_staff)
+
+urlpatterns = [
+ url(r'^prednasky/$', views.newPrednaska),
+ url(r'^prednasky/hotovo$', views.Prednaska_hotovo),
+ url(r'^prednasky/metaseznam_prednasek$', staff_member_required(views.MetaSeznamListView.as_view()), name='metaseznam-list'),
+ url(r'^prednasky/seznam_prednasek/(?P\d+)/$', staff_member_required(views.SeznamListView.as_view()), name='seznam-list'),
+ url(r'^prednasky/seznam_prednasek/(?P\d+)/export$', staff_member_required(views.SeznamExportView), name='seznam-export'),
+# url(r'^korektury/help/', staff_member_required(views.KorekturyHelpView.as_view()), name='korektury-help'),
+]
diff --git a/prednasky/views.py b/prednasky/views.py
index ede98aee..e25af366 100644
--- a/prednasky/views.py
+++ b/prednasky/views.py
@@ -1,4 +1,5 @@
-from django.shortcuts import render
+from django.shortcuts import render,get_object_or_404
+from django.views import generic
from prednasky.forms import NewPrednaskyForm
from prednasky.models import Seznam, Hlasovani, Prednaska
from django.shortcuts import HttpResponseRedirect
@@ -24,7 +25,7 @@ def newPrednaska(request):
hlasovani.prednaska = Prednaska.objects.filter(pk = int(i[1:]))[0]
hlasovani.body = int(request.POST[i])
hlasovani.ucastnik = jmeno
- hlasovani.seznam = seznam
+ hlasovani.seznam = seznam
hlasovani.save()
# presmerovani na prave vzniklou galerii
@@ -40,6 +41,36 @@ def newPrednaska(request):
def Prednaska_hotovo(request):
return render(request, 'prednasky/hotovo.html')
-
-# Create your views here.
+class MetaSeznamListView(generic.ListView):
+ model = Seznam
+ template_name = 'prednasky/metaseznam_prednasek.html'
+
+class SeznamListView(generic.ListView):
+ template_name = 'prednasky/seznam_prednasek.html'
+ def get_queryset(self):
+ print self.kwargs
+ self.seznam = get_object_or_404(Seznam,id=self.kwargs["seznam"])
+ return Prednaska.objects.filter(seznamy = self.seznam)
+
+
+def SeznamExportView(request,seznam):
+ seznam_obj = Seznam.objects.get(id=seznam)
+ hlasovani = Hlasovani.objects.filter(seznam=seznam)
+ prednasky = Prednaska.objects.filter(seznamy=seznam)
+ orgove = set(map(lambda x:x.org,prednasky))
+ ucastnici = list(set(map(lambda x:x.ucastnik,hlasovani)))
+
+ for p in prednasky:
+ p.body = []
+ for u in ucastnici:
+ p.body.append(hlasovani.get(ucastnik=u,prednaska=p).body)
+
+ for h in hlasovani:
+ h.ucastnik = hash(h.ucastnik)
+
+ return render(request, 'prednasky/seznam_prednasek_export.txt',
+ {"hlasovani":hlasovani,"prednasky":prednasky,"orgove":orgove},
+ content_type="text/plain")
+
+
diff --git a/seminar/urls.py b/seminar/urls.py
index 725a6037..63666667 100644
--- a/seminar/urls.py
+++ b/seminar/urls.py
@@ -3,16 +3,11 @@ from django.conf.urls import patterns, url
from django.contrib.auth.decorators import user_passes_test
from . import views, export
from utils import staff_member_required
-from prednasky.views import newPrednaska, Prednaska_hotovo
from django.views.generic.base import RedirectView
staff_member_required = user_passes_test(lambda u: u.is_staff)
urlpatterns = [
- # prednasky
- url(r'^prednasky/$', newPrednaska),
- url(r'^prednasky/hotovo$', Prednaska_hotovo),
-
# REDIRECTy
url(r'^jak-resit/$', RedirectView.as_view(url='/co-je-MaM/jak-resit/')),