from django.urls import path, include, re_path from django.contrib.auth.decorators import login_required from . import views, export from .utils import org_required, resitel_required, viewMethodSwitch from django.views.generic.base import RedirectView urlpatterns = [ # path('aktualni/temata/', views.TemataRozcestnikView), # path('/t/', views.TematkoView), # Organizatori path('co-je-MaM/organizatori/', views.CojemamOrganizatoriView.as_view(), name='organizatori'), path('co-je-MaM/organizatori/organizovali/', views.CojemamOrganizatoriStariView.as_view(), name='stari_organizatori'), # Archiv path('archiv/rocniky/', views.ArchivView.as_view(), name="seminar_archiv_rocniky"), path('archiv/temata/', views.ArchivTemataView.as_view(), name="seminar_archiv_temata"), path('rocnik//', views.RocnikView.as_view(), name='seminar_rocnik'), path('cislo/./', views.CisloView.as_view(), name='seminar_cislo'), path('problem//', views.ProblemView.as_view(), name='seminar_problem'), path('treenode//', views.TreeNodeView.as_view(), name='seminar_treenode'), path('treenode//json/', views.TreeNodeJSONView.as_view(), name='seminar_treenode_json'), path('treenode/text//', views.TextWebView.as_view(), name='seminar_textnode_web'), path('treenode/editor/pridat////', views.TreeNodePridatView.as_view(), name='treenode_pridat'), path('treenode/editor/smazat//', views.TreeNodeSmazatView.as_view(), name='treenode_smazat'), path('treenode/editor/odvesitpryc//', views.TreeNodeOdvesitPrycView.as_view(), name='treenode_odvesitpryc'), path('treenode/editor/podvesit///', views.TreeNodePodvesitView.as_view(), name='treenode_podvesit'), path('treenode/editor/prohodit//', views.TreeNodeProhoditView.as_view(), name='treenode_prohodit'), path('treenode/sirotcinec/', views.SirotcinecView.as_view(), name='seminar_treenode_sirotcinec'), #path('problem/(?P\d+)/(?P\d+)/', views.PrispevekView.as_view(), name='seminar_problem_prispevek'), # Soustredeni path( 'soustredeni/probehlo/', views.SoustredeniListView.as_view(), name='seminar_seznam_soustredeni' ), path( 'soustredeni//seznam_ucastniku', org_required(views.SoustredeniUcastniciView.as_view()), name='soustredeni_ucastnici' ), path( 'soustredeni//maily_ucastniku', org_required(views.SoustredeniMailyUcastnikuView.as_view()), name='maily_ucastniku' ), path( 'soustredeni//export_ucastniku', org_required(views.soustredeniUcastniciExportView), name='soustredeni_ucastnici_export' ), path( 'soustredeni//fotogalerie/', include('galerie.urls') ), # Zadani path('zadani/aktualni/', views.AktualniZadaniView.as_view(), name='seminar_aktualni_zadani'), path('zadani/temata/', views.ZadaniTemataView, name='seminar_temata'), #path('zadani/vysledkova-listina/', views.ZadaniAktualniVysledkovkaView, name='seminar_vysledky'), path('stare-novinky/', views.StareNovinkyView.as_view(), name='stare_novinky'), # Clanky path('archiv/clanky/', views.ClankyResitelView.as_view(), name='clanky_resitel'), #path('clanky/org/', views.ClankyOrganizatorView.as_view(), name='clanky_organizator'), # Aesop path( 'aesop-export/mam-rocnik-.csv', org_required(export.ExportRocnikView.as_view()), name='seminar_export_rocnik' ), path( 'aesop-export/mam-sous-.csv', org_required(export.ExportSousView.as_view()), name='seminar_export_sous' ), path( 'aesop-export/index.csv', org_required(export.ExportIndexView.as_view()), name='seminar_export_index' ), # Stranky viditelne pouze pro orgy: path( 'rocnik//vysledkovka.tex', org_required(views.RocnikVysledkovkaView.as_view()), name='seminar_rocnik_vysledkovka' ), path( 'cislo/./vysledkovka.tex', org_required(views.CisloVysledkovkaView.as_view()), name='seminar_cislo_vysledkovka' ), path( 'cislo/./obalky.pdf', org_required(views.cisloObalkyView), name='seminar_cislo_obalky' ), path( 'cislo/./tituly.tex', org_required(views.TitulyView), name='seminar_cislo_titul' ), path( 'stav', org_required(views.StavDatabazeView), name='stav_databaze' ), path( 'cislo/./obalkovani', org_required(views.ObalkovaniView.as_view()), name='seminar_cislo_resitel_obalkovani' ), path( 'cislo/./odmeny/./', org_required(views.OdmenyView.as_view()), name="seminar_archiv_odmeny"), path( 'soustredeni//obalky.pdf', org_required(views.soustredeniObalkyView), name='seminar_soustredeni_obalky' ), path( 'org/vloz_body//', org_required(views.VlozBodyView.as_view()), name='seminar_org_vlozbody' ), # příprava na nestatický orgorozcestník path( 'org/rozcestnik/', org_required(views.OrgoRozcestnikView.as_view()), name='seminar_org_rozcestnik' ), path('prihlaska/',views.prihlaskaView, name='seminar_prihlaska'), path('login/', views.LoginView.as_view(), name='login'), path('logout/', views.LogoutView.as_view(), name='logout'), path('resitel/', resitel_required(views.ResitelView.as_view()), name='seminar_resitel'), path('reset_password/', views.PasswordResetView.as_view(), name='reset_password'), path('change_password/', views.PasswordChangeView.as_view(), name='change_password'), path('reset_password_done/', views.PasswordResetDoneView.as_view(), name='reset_password_done'), path('reset_password_confirm///', views.PasswordResetConfirmView.as_view(), name='password_reset_confirm'), path('reset_password_complete/', views.PasswordResetCompleteView.as_view(), name='reset_password_complete'), path( 'resitel_edit', login_required(views.resitelEditView, login_url='/login/'), name='seminar_resitel_edit' ), # Obecný view na profil -- orgům dá rozcestník, řešitelům jejich stránku path('profil/', views.profilView, name='profil'), # Autocomplete path('autocomplete/skola/',views.SkolaAutocomplete.as_view(), name='autocomplete_skola'), path('autocomplete/resitel/', org_required(views.ResitelAutocomplete.as_view()), name='autocomplete_resitel'), path('autocomplete/problem/odevzdatelny',views.OdevzdatelnyProblemAutocomplete.as_view(), name='autocomplete_problem_odevzdatelny'), path('temp/add_solution', org_required(views.AddSolutionView.as_view()), name='seminar_vloz_reseni'), path('temp/nahraj_reseni', resitel_required(views.NahrajReseniView.as_view()), name='seminar_nahraj_reseni'), re_path(r'^temp/vue/.*$',views.VueTestView.as_view(),name='vue_test_view'), path('temp/image_upload/', views.NahrajObrazekKTreeNoduView.as_view()), path('', views.TitulniStranaView.as_view(), name='titulni_strana'), path('jak-resit/', views.JakResitView.as_view(), name='jak-resit'), # Ceka na autocomplete v3 # path('autocomplete/organizatori/', # org_member_required(views.OrganizatorAutocomplete.as_view()), # name='seminar_autocomplete_organizator') path('temp/reseni/', org_required(views.TabulkaOdevzdanychReseniView.as_view()), name='odevzdavatko_tabulka'), path('temp/reseni///', org_required(views.ReseniProblemuView.as_view()), name='odevzdavatko_reseni_resitele_k_problemu'), path('temp/reseni/', org_required(viewMethodSwitch(get=views.DetailReseniView.as_view(), post=views.HodnoceniReseniView.as_view())), name='odevzdavatko_detail_reseni'), path('temp/reseni/all', org_required(views.SeznamReseniView.as_view())), path('temp/reseni/akt', org_required(views.SeznamAktualnichReseniView.as_view())), ]