bornhack-website/src/bornhack/urls.py

329 lines
11 KiB
Python
Raw Normal View History

from allauth.account.views import (
LoginView,
LogoutView,
)
from django.conf import settings
2015-10-03 01:07:05 +00:00
from django.conf.urls import include, url
from django.contrib import admin
from django.contrib.auth.decorators import login_required
from camps.views import *
from info.views import *
2016-12-28 23:15:13 +00:00
from villages.views import *
from program.views import *
from sponsors.views import *
from teams.views import *
2017-07-11 20:50:31 +00:00
from people.views import *
from tickets.views import ShopTicketListView
2017-08-26 01:48:02 +00:00
from bar.views import MenuView
2015-10-03 01:07:05 +00:00
2017-12-30 23:16:07 +00:00
# require 2fa token entry (if enabled on admin account) when logging into /admin by using allauth login form
admin.site.login = login_required(admin.site.login)
2015-10-03 01:07:05 +00:00
urlpatterns = [
2016-08-08 18:05:21 +00:00
url(
r'^profile/',
include('profiles.urls', namespace='profiles')
),
url(
r'^tickets/',
include('tickets.urls', namespace='tickets')
),
2016-08-08 18:05:21 +00:00
url(
r'^shop/',
include('shop.urls', namespace='shop')
),
url(
r'^news/',
include('news.urls', namespace='news')
),
2016-05-19 09:19:51 +00:00
url(
2016-08-08 18:07:28 +00:00
r'^contact/',
2016-05-19 09:19:51 +00:00
TemplateView.as_view(template_name='contact.html'),
name='contact'
),
2016-06-06 15:33:25 +00:00
url(
2016-08-08 18:07:28 +00:00
r'^conduct/',
2016-06-06 15:33:25 +00:00
TemplateView.as_view(template_name='coc.html'),
name='conduct'
),
2016-02-20 22:39:02 +00:00
url(
r'^login/$',
LoginView.as_view(),
name='account_login',
),
url(
r'^logout/$',
LogoutView.as_view(),
name='account_logout',
),
2016-06-01 12:08:24 +00:00
url(
2016-08-08 18:07:28 +00:00
r'^privacy-policy/$',
2016-06-01 12:08:24 +00:00
TemplateView.as_view(template_name='legal/privacy_policy.html'),
name='privacy-policy'
),
url(
2016-08-08 18:07:28 +00:00
r'^general-terms-and-conditions/$',
2016-06-01 12:08:24 +00:00
TemplateView.as_view(template_name='legal/general_terms_and_conditions.html'),
name='general-terms'
),
url(r'^accounts/', include('allauth.urls')),
url(r'^accounts/', include('allauth_2fa.urls')),
2016-06-06 19:47:37 +00:00
url(r'^admin/', include(admin.site.urls)),
2017-01-25 00:49:13 +00:00
url(
r'^camps/$',
CampListView.as_view(),
name='camp_list'
),
2017-02-19 20:20:19 +00:00
# camp redirect views here
url(
r'^$',
CampRedirectView.as_view(),
2017-03-09 23:01:14 +00:00
kwargs={'page': 'camp_detail'},
name='camp_detail_redirect',
2017-02-19 20:20:19 +00:00
),
url(
r'^program/$',
CampRedirectView.as_view(),
2017-03-09 23:01:14 +00:00
kwargs={'page': 'schedule_index'},
name='schedule_index_redirect',
2017-02-19 20:20:19 +00:00
),
url(
r'^info/$',
CampRedirectView.as_view(),
2017-03-09 23:01:14 +00:00
kwargs={'page': 'info'},
name='info_redirect',
2017-02-19 20:20:19 +00:00
),
url(
r'^sponsors/$',
CampRedirectView.as_view(),
2017-03-09 23:01:14 +00:00
kwargs={'page': 'sponsors'},
name='sponsors_redirect',
2017-02-19 20:20:19 +00:00
),
url(
r'^villages/$',
CampRedirectView.as_view(),
2017-03-09 23:01:14 +00:00
kwargs={'page': 'village_list'},
name='village_list_redirect',
2017-02-19 20:20:19 +00:00
),
2017-07-11 20:50:31 +00:00
url(
r'^people/$',
PeopleView.as_view(),
2017-08-13 13:42:42 +00:00
name='people',
2017-07-11 20:50:31 +00:00
),
url(
r'^backoffice/',
include('backoffice.urls', namespace='backoffice')
),
# camp specific urls below here
2016-12-28 23:15:13 +00:00
url(
r'(?P<camp_slug>[-_\w+]+)/', include([
url(
r'^$',
2016-12-28 23:15:13 +00:00
CampDetailView.as_view(),
name='camp_detail'
),
2016-12-28 23:15:13 +00:00
url(
2016-12-28 23:15:13 +00:00
r'^info/$',
CampInfoView.as_view(),
name='info'
),
2016-12-28 23:15:13 +00:00
url(
r'^program/', include([
2016-12-28 23:15:13 +00:00
url(
r'^$',
ScheduleView.as_view(),
2016-12-28 23:15:13 +00:00
name='schedule_index'
),
url(
r'^noscript/$',
NoScriptScheduleView.as_view(),
name='noscript_schedule_index'
),
url(
r'^ics/', ICSView.as_view(), name="ics_view"
),
url(
r'^control/', ProgramControlCenter.as_view(), name="program_control_center"
),
2017-03-12 14:43:41 +00:00
url(
r'^proposals/', include([
2017-03-12 14:43:41 +00:00
url(
r'^$',
ProposalListView.as_view(),
name='proposal_list',
2017-03-12 14:43:41 +00:00
),
url(
r'^speakers/', include([
url(
r'^create/$',
SpeakerProposalCreateView.as_view(),
name='speakerproposal_create'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/$',
SpeakerProposalDetailView.as_view(),
name='speakerproposal_detail'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/edit/$',
SpeakerProposalUpdateView.as_view(),
name='speakerproposal_update'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/submit/$',
SpeakerProposalSubmitView.as_view(),
name='speakerproposal_submit'
),
2017-03-12 14:43:41 +00:00
url(
r'^(?P<pk>[a-f0-9-]+)/pictures/(?P<picture>[-_\w+]+)/$',
SpeakerProposalPictureView.as_view(),
name='speakerproposal_picture',
2017-03-12 14:43:41 +00:00
),
])
),
url(
r'^events/', include([
url(
r'^create/$',
EventProposalCreateView.as_view(),
name='eventproposal_create'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/$',
EventProposalDetailView.as_view(),
name='eventproposal_detail'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/edit/$',
EventProposalUpdateView.as_view(),
name='eventproposal_update'
2017-03-12 14:43:41 +00:00
),
url(
r'^(?P<pk>[a-f0-9-]+)/submit/$',
EventProposalSubmitView.as_view(),
name='eventproposal_submit'
),
2017-03-12 14:43:41 +00:00
])
),
])
),
2016-12-28 23:15:13 +00:00
url(
2017-03-08 01:01:38 +00:00
r'^speakers/', include([
url(
r'^$',
SpeakerListView.as_view(),
name='speaker_index'
),
url(
r'^(?P<slug>[-_\w+]+)/$',
SpeakerDetailView.as_view(),
name='speaker_detail'
),
url(
r'^(?P<slug>[-_\w+]+)/pictures/(?P<picture>[-_\w+]+)/$',
SpeakerPictureView.as_view(),
name='speaker_picture',
),
]),
),
2016-12-28 23:15:13 +00:00
url(
r'^events/$',
EventListView.as_view(),
name='event_index'
),
2017-01-24 15:42:57 +00:00
url(
r'^call-for-speakers/$',
2017-01-24 15:42:57 +00:00
CallForSpeakersView.as_view(),
name='call_for_speakers'
),
2017-03-31 17:25:48 +00:00
url(
r'^calendar/',
ICSView.as_view(),
name='ics_calendar'
),
# this has to be the last URL here
url(
r'^(?P<slug>[-_\w+]+)/$',
EventDetailView.as_view(),
name='event_detail'
),
])
),
2016-12-28 23:15:13 +00:00
url(
r'^sponsors/call/$',
CallForSponsorsView.as_view(),
name='call-for-sponsors'
),
url(
2016-12-28 23:15:13 +00:00
r'^sponsors/$',
SponsorsView.as_view(),
2016-12-28 23:15:13 +00:00
name='sponsors'
),
2016-12-28 23:15:13 +00:00
2017-08-26 01:48:02 +00:00
url(
r'^bar/menu$',
MenuView.as_view(),
name='menu'
),
url(
2016-12-28 23:15:13 +00:00
r'^villages/', include([
url(
r'^$',
VillageListView.as_view(),
name='village_list'
2017-04-02 16:04:57 +00:00
),
url(
2016-12-28 23:15:13 +00:00
r'create/$',
VillageCreateView.as_view(),
name='village_create'
),
url(
r'(?P<slug>[-_\w+]+)/delete/$',
VillageDeleteView.as_view(),
name='village_delete'
),
url(
r'(?P<slug>[-_\w+]+)/edit/$',
VillageUpdateView.as_view(),
name='village_update'
),
2017-11-23 22:09:14 +00:00
# this has to be the last url in the list
2016-12-28 23:15:13 +00:00
url(
r'(?P<slug>[-_\w+]+)/$',
VillageDetailView.as_view(),
name='village_detail'
),
])
),
url(
2017-11-23 22:09:14 +00:00
r'^teams/',
include('teams.urls', namespace='teams')
),
2017-11-23 22:09:14 +00:00
2016-12-28 23:15:13 +00:00
])
)
2015-10-03 01:07:05 +00:00
]
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
url(r'^__debug__/', include(debug_toolbar.urls)),
] + urlpatterns