2020-02-12 12:10:41 +00:00
|
|
|
from django.urls import include, path
|
|
|
|
|
|
|
|
from .views import (
|
|
|
|
CallForParticipationView,
|
|
|
|
CombinedProposalPersonSelectView,
|
|
|
|
CombinedProposalSubmitView,
|
|
|
|
CombinedProposalTypeSelectView,
|
|
|
|
EventDetailView,
|
|
|
|
EventListView,
|
|
|
|
EventProposalAddPersonView,
|
|
|
|
EventProposalCreateView,
|
|
|
|
EventProposalDeleteView,
|
|
|
|
EventProposalDetailView,
|
|
|
|
EventProposalRemovePersonView,
|
|
|
|
EventProposalSelectPersonView,
|
|
|
|
EventProposalTypeSelectView,
|
|
|
|
EventProposalUpdateView,
|
2020-02-22 13:50:09 +00:00
|
|
|
FeedbackCreateView,
|
|
|
|
FeedbackDeleteView,
|
|
|
|
FeedbackDetailView,
|
|
|
|
FeedbackListView,
|
|
|
|
FeedbackUpdateView,
|
2020-02-22 14:09:12 +00:00
|
|
|
FrabXmlView,
|
2020-02-12 12:10:41 +00:00
|
|
|
ICSView,
|
|
|
|
NoScriptScheduleView,
|
|
|
|
ProgramControlCenter,
|
|
|
|
ProposalListView,
|
|
|
|
ScheduleView,
|
|
|
|
SpeakerDetailView,
|
|
|
|
SpeakerListView,
|
|
|
|
SpeakerProposalCreateView,
|
|
|
|
SpeakerProposalDeleteView,
|
|
|
|
SpeakerProposalDetailView,
|
|
|
|
SpeakerProposalUpdateView,
|
|
|
|
UrlCreateView,
|
|
|
|
UrlDeleteView,
|
|
|
|
UrlUpdateView,
|
|
|
|
)
|
2018-05-20 16:16:20 +00:00
|
|
|
|
2019-06-16 12:32:24 +00:00
|
|
|
app_name = "program"
|
2018-05-20 16:16:20 +00:00
|
|
|
|
|
|
|
urlpatterns = [
|
2019-06-16 12:32:24 +00:00
|
|
|
path("", ScheduleView.as_view(), name="schedule_index"),
|
|
|
|
path("noscript/", NoScriptScheduleView.as_view(), name="noscript_schedule_index"),
|
|
|
|
path("ics/", ICSView.as_view(), name="ics_view"),
|
2020-02-22 14:09:12 +00:00
|
|
|
path("frab.xml", FrabXmlView.as_view(), name="frab_view"),
|
2019-06-16 12:32:24 +00:00
|
|
|
path("control/", ProgramControlCenter.as_view(), name="program_control_center"),
|
2018-05-23 21:28:27 +00:00
|
|
|
path(
|
2019-06-16 12:32:24 +00:00
|
|
|
"proposals/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path("", ProposalListView.as_view(), name="proposal_list"),
|
|
|
|
path(
|
|
|
|
"submit/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path(
|
|
|
|
"",
|
|
|
|
CombinedProposalTypeSelectView.as_view(),
|
|
|
|
name="proposal_combined_type_select",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<slug:event_type_slug>/",
|
|
|
|
CombinedProposalSubmitView.as_view(),
|
|
|
|
name="proposal_combined_submit",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<slug:event_type_slug>/select_person/",
|
|
|
|
CombinedProposalPersonSelectView.as_view(),
|
|
|
|
name="proposal_combined_person_select",
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"people/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/",
|
|
|
|
SpeakerProposalDetailView.as_view(),
|
|
|
|
name="speakerproposal_detail",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/update/",
|
|
|
|
SpeakerProposalUpdateView.as_view(),
|
|
|
|
name="speakerproposal_update",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/delete/",
|
|
|
|
SpeakerProposalDeleteView.as_view(),
|
|
|
|
name="speakerproposal_delete",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:speaker_uuid>/add_event/",
|
|
|
|
EventProposalTypeSelectView.as_view(),
|
|
|
|
name="eventproposal_typeselect",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:speaker_uuid>/add_event/<slug:event_type_slug>/",
|
|
|
|
EventProposalCreateView.as_view(),
|
|
|
|
name="eventproposal_create",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:speaker_uuid>/add_url/",
|
|
|
|
UrlCreateView.as_view(),
|
|
|
|
name="speakerproposalurl_create",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:speaker_uuid>/urls/<uuid:url_uuid>/update/",
|
|
|
|
UrlUpdateView.as_view(),
|
|
|
|
name="speakerproposalurl_update",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:speaker_uuid>/urls/<uuid:url_uuid>/delete/",
|
|
|
|
UrlDeleteView.as_view(),
|
|
|
|
name="speakerproposalurl_delete",
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"events/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/",
|
|
|
|
EventProposalDetailView.as_view(),
|
|
|
|
name="eventproposal_detail",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/update/",
|
|
|
|
EventProposalUpdateView.as_view(),
|
|
|
|
name="eventproposal_update",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:pk>/delete/",
|
|
|
|
EventProposalDeleteView.as_view(),
|
|
|
|
name="eventproposal_delete",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/add_person/",
|
|
|
|
EventProposalSelectPersonView.as_view(),
|
|
|
|
name="eventproposal_selectperson",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/add_person/new/",
|
|
|
|
SpeakerProposalCreateView.as_view(),
|
|
|
|
name="speakerproposal_create",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/add_person/<uuid:speaker_uuid>/",
|
|
|
|
EventProposalAddPersonView.as_view(),
|
|
|
|
name="eventproposal_addperson",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/remove_person/<uuid:speaker_uuid>/",
|
|
|
|
EventProposalRemovePersonView.as_view(),
|
|
|
|
name="eventproposal_removeperson",
|
|
|
|
),
|
2020-02-22 13:50:09 +00:00
|
|
|
# event url views
|
2019-06-16 12:32:24 +00:00
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/add_url/",
|
|
|
|
UrlCreateView.as_view(),
|
|
|
|
name="eventproposalurl_create",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/urls/<uuid:url_uuid>/update/",
|
|
|
|
UrlUpdateView.as_view(),
|
|
|
|
name="eventproposalurl_update",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"<uuid:event_uuid>/urls/<uuid:url_uuid>/delete/",
|
|
|
|
UrlDeleteView.as_view(),
|
|
|
|
name="eventproposalurl_delete",
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
2018-05-20 16:16:20 +00:00
|
|
|
),
|
2018-05-23 21:28:27 +00:00
|
|
|
path(
|
2019-06-16 12:32:24 +00:00
|
|
|
"speakers/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path("", SpeakerListView.as_view(), name="speaker_index"),
|
|
|
|
path(
|
|
|
|
"<slug:slug>/", SpeakerDetailView.as_view(), name="speaker_detail"
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
2018-05-20 16:16:20 +00:00
|
|
|
),
|
2019-06-16 12:32:24 +00:00
|
|
|
path("events/", EventListView.as_view(), name="event_index"),
|
2018-05-20 16:16:20 +00:00
|
|
|
# legacy CFS url kept on purpose to keep old links functional
|
2018-05-23 21:28:27 +00:00
|
|
|
path(
|
2019-06-16 12:32:24 +00:00
|
|
|
"call-for-speakers/",
|
2018-05-20 16:16:20 +00:00
|
|
|
CallForParticipationView.as_view(),
|
2019-06-16 12:32:24 +00:00
|
|
|
name="call_for_speakers",
|
2018-05-20 16:16:20 +00:00
|
|
|
),
|
2018-05-23 21:28:27 +00:00
|
|
|
path(
|
2019-06-16 12:32:24 +00:00
|
|
|
"call-for-participation/",
|
2018-05-20 16:16:20 +00:00
|
|
|
CallForParticipationView.as_view(),
|
2019-06-16 12:32:24 +00:00
|
|
|
name="call_for_participation",
|
2018-05-20 16:16:20 +00:00
|
|
|
),
|
2019-06-16 12:32:24 +00:00
|
|
|
path("calendar", ICSView.as_view(), name="ics_calendar"),
|
2020-02-22 13:50:09 +00:00
|
|
|
# this must be the last URL here or the slug will overrule the others
|
|
|
|
path(
|
|
|
|
"<slug:event_slug>/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path("", EventDetailView.as_view(), name="event_detail"),
|
|
|
|
path(
|
|
|
|
"feedback/",
|
|
|
|
include(
|
|
|
|
[
|
|
|
|
path(
|
|
|
|
"",
|
|
|
|
FeedbackListView.as_view(),
|
|
|
|
name="eventfeedback_list",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"show/",
|
|
|
|
FeedbackDetailView.as_view(),
|
|
|
|
name="eventfeedback_detail",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"create/",
|
|
|
|
FeedbackCreateView.as_view(),
|
|
|
|
name="eventfeedback_create",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"update/",
|
|
|
|
FeedbackUpdateView.as_view(),
|
|
|
|
name="eventfeedback_update",
|
|
|
|
),
|
|
|
|
path(
|
|
|
|
"delete/",
|
|
|
|
FeedbackDeleteView.as_view(),
|
|
|
|
name="eventfeedback_delete",
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
|
|
|
),
|
|
|
|
]
|
|
|
|
),
|
|
|
|
),
|
2018-05-20 16:16:20 +00:00
|
|
|
]
|