Browse Source

orgorozhrani verze -1: základní věci, u problémů je potřeba vymyslet, kam to má směrovat, asi odkaz na treenode editor

middleware_test
Anet 4 years ago
parent
commit
6477735914
  1. 86
      seminar/templates/seminar/orgorozcestnik.html
  2. 2
      seminar/urls.py
  3. 34
      seminar/views/views_all.py

86
seminar/templates/seminar/orgorozcestnik.html

@ -0,0 +1,86 @@
{% extends "base.html" %}
{% block content %}
<h2><strong>Informace, komunikace</strong></h2>
<ul>
<li><strong><a href="https://wiki.mam.bezva.org/">wiki</a> </strong>obsahuje různé návody a know-how</li>
<li><strong><a href="https://riot.im/app/#/room/#orgovna:dolujeme.eu">Riot</a> </strong>chatování s dalšími orgy</li>
<li><strong>Kanboard </strong>správa TODO
<ul>
<li><a href="https://kanboard.ledoian.cz/?controller=BoardViewController&amp;action=show&amp;project_id=10">webařský</a></li>
<li>soustředění</li>
</ul>
</li>
<li><a href="https://mam.mff.cuni.cz/admin/seminar/novinky/add/"><strong>přidat novinku</strong></a> na web</li>
</ul>
<hr />
<h2><strong>Tvorba čísla</strong></h2>
<ul>
<li><a href="https://mam.mff.cuni.cz/admin/seminar/problemnavrh/add/"><strong>přidat téma</strong></a></li>
<li><strong>korektury</strong>
<ul>
<li><a href="https://mam.mff.cuni.cz/korektury/">korekturování</a></li>
<li><a href="https://mam.mff.cuni.cz/admin/korektury/korekturovanepdf/add/">přidat pdf k opravám</a></li>
</ul>
</li>
<li><a href='{{ posledni_cislo_url }}'><strong>poslední vydané číslo </strong></a></li>
</ul>
<hr />
<h2><strong>Moje problémy</strong></h2>
<h3> Témata </h3>
<ul>
{% for t in temata %}
<li> {{ t }} </li>
{% endfor %}
</ul>
<h3> Úlohy </h3>
<ul>
{% for u in ulohy %}
<li> {{ u }} </li>
{% endfor %}
</ul>
<h3> Články </h3>
<ul>
{% for c in clanky %}
<li> {{ c }} </li>
{% endfor %}
</ul>
<hr />
<h2><strong>Soustředění</strong></h2>
<ul>
<li><strong>přednášky</strong>
<ul>
<li><a href="https://mam.mff.cuni.cz/admin/prednasky/prednaska/">vypisování přednášek</a></li>
<li>hlasování o přednáškách</li>
</ul>
</li>
<li><a href="https://mam.mff.cuni.cz/soustredeni/probehlo/">proběhlá soustředění</a>
<ul>
<li>vytvoření galerie</li>
<li>stažení seznamu účastníků</li>
<li>obálky</li>
</ul>
</li>
</ul>
<hr />
<h2><strong>Můj profil</strong></h2>
<ul>
<li><a href="http://127.0.0.1:8000/admin/seminar/organizator/{{ organizator.id }}/change/"><strong>upravit </strong></a></li>
</ul>
<hr />
<p>Nemůžeš najít, co hledáš? Může to být v <a href="https://mam.mff.cuni.cz/admin/">administračním rozhraní webu</a>.</p>
{% endblock content %}

2
seminar/urls.py

@ -91,7 +91,7 @@ urlpatterns = [
path('org/vloz_body/<int:tema>/',
staff_member_required(views.VlozBodyView.as_view()),name='seminar_org_vlozbody'),
# příprava na nestatický orgorozcestník
path('org/rozcestnik',
path('org/rozcestnik/',
staff_member_required(views.OrgoRozcestnikView.as_view()),name='seminar_org_rozcestnik'),
path('prihlaska/',views.prihlaskaView, name='seminar_prihlaska'),
path('login/', views.LoginView.as_view(), name='login'),

34
seminar/views/views_all.py

@ -10,6 +10,7 @@ from django.http import Http404,HttpResponseBadRequest,HttpResponseRedirect
from django.db.models import Q, Sum, Count
from django.views.decorators.csrf import ensure_csrf_cookie
from django.views.generic.edit import FormView, CreateView
from django.views.generic.base import TemplateView
from django.contrib.auth import authenticate, login, get_user_model, logout
from django.contrib.auth import views as auth_views
from django.contrib.auth.models import User
@ -875,12 +876,39 @@ def oldObalkovaniView(request, rocnik, cislo):
### Orgostránky
def OrgoRozcestnikView(request):
class OrgoRozcestnikView(TemplateView):
''' Zobrazí organizátorský rozcestník.'''
posledni_soustredeni = Soustredeni.objects.order_by('-datum_konce').first()
template_name = 'seminar/orgorozcestnik.html'
content_type = 'text/plain; charset=UTF8'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['posledni_soustredeni'] = Soustredeni.objects.order_by('-datum_konce').first()
nastaveni = Nastaveni.objects.first()
aktualni_rocnik = nastaveni.aktualni_rocnik
context['posledni_cislo_url'] = nastaveni.aktualni_cislo.verejne_url()
# TODO možná chceme odkazovat na právě rozpracované číslo, a ne to poslední vydané
# pokud nechceme haluzit kód (= poradi) dalšího čísla, bude asi potřeba jít
# přes treenody (a dát si přitom pozor na MezicisloNode)
u = self.request.user
os = s.Osoba.objects.get(user=u)
organizator = s.Organizator.objects.get(osoba=os)
temata_garant = s.Tema.objects.filter(garant=organizator,
rocnik=aktualni_rocnik)
#FIXME: přidat opravovatel, stav='STAV_ZADANY'
ulohy_garant = s.Uloha.objects.filter(garant=organizator,
cislo_zadani__rocnik=aktualni_rocnik)
clanky_garant = s.Clanek.objects.filter(garant=organizator,
cislo__rocnik=aktualni_rocnik)
context['temata'] = temata_garant
context['ulohy'] = ulohy_garant
context['clanky'] = clanky_garant
context['organizator'] = organizator
return context
#content_type = 'text/plain; charset=UTF8'
#XXX
### Tituly

Loading…
Cancel
Save