django4: replaced urls.url with url.re_path equivalent (#68593)

This commit is contained in:
Agate 2022-08-31 17:14:39 +02:00
parent da4456096b
commit d37609ac75
3 changed files with 242 additions and 234 deletions

View File

@ -14,119 +14,127 @@
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.conf.urls import url from django.urls import path, re_path
from . import views from . import views
urlpatterns = [ urlpatterns = [
url(r'^agenda/$', views.agendas), path('agenda/', views.agendas),
url(r'^agendas/datetimes/$', views.agendas_datetimes, name='api-agendas-datetimes'), path('agendas/datetimes/', views.agendas_datetimes, name='api-agendas-datetimes'),
url(r'^agendas/recurring-events/$', views.recurring_events_list, name='api-agenda-recurring-events'), path('agendas/recurring-events/', views.recurring_events_list, name='api-agenda-recurring-events'),
url(r'^agendas/recurring-events/fillslots/$', views.recurring_fillslots, name='api-recurring-fillslots'), path('agendas/recurring-events/fillslots/', views.recurring_fillslots, name='api-recurring-fillslots'),
url( path(
r'^agendas/events/$', 'agendas/events/',
views.agendas_events, views.agendas_events,
name='api-agendas-events', name='api-agendas-events',
), ),
url( path(
r'^agendas/events/fillslots/$', 'agendas/events/fillslots/',
views.agendas_events_fillslots, views.agendas_events_fillslots,
name='api-agendas-events-fillslots', name='api-agendas-events-fillslots',
), ),
url( path(
r'^agendas/events/check-status/$', 'agendas/events/check-status/',
views.agendas_events_check_status, views.agendas_events_check_status,
name='api-agendas-events-check-status', name='api-agendas-events-check-status',
), ),
url(r'^agenda/(?P<agenda_identifier>[\w-]+)/$', views.agenda), re_path(r'^agenda/(?P<agenda_identifier>[\w-]+)/$', views.agenda),
url(r'^agenda/(?P<agenda_identifier>[\w-]+)/datetimes/$', views.datetimes, name='api-agenda-datetimes'), re_path(
url( r'^agenda/(?P<agenda_identifier>[\w-]+)/datetimes/$', views.datetimes, name='api-agenda-datetimes'
),
re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/fillslot/(?P<event_identifier>[\w:-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/fillslot/(?P<event_identifier>[\w:-]+)/$',
views.fillslot, views.fillslot,
name='api-fillslot', name='api-fillslot',
), ),
url(r'^agenda/(?P<agenda_identifier>[\w-]+)/fillslots/$', views.fillslots, name='api-agenda-fillslots'), re_path(
url( r'^agenda/(?P<agenda_identifier>[\w-]+)/fillslots/$', views.fillslots, name='api-agenda-fillslots'
),
re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/events/fillslots/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/events/fillslots/$',
views.events_fillslots, views.events_fillslots,
name='api-agenda-events-fillslots', name='api-agenda-events-fillslots',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/event/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/event/$',
views.events, views.events,
name='api-events', name='api-events',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/event/(?P<event_identifier>[\w:-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/event/(?P<event_identifier>[\w:-]+)/$',
views.event, views.event,
name='api-event', name='api-event',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/status/(?P<event_identifier>[\w:-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/status/(?P<event_identifier>[\w:-]+)/$',
views.event_status, views.event_status,
name='api-event-status', name='api-event-status',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/bookings/(?P<event_identifier>[\w:-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/bookings/(?P<event_identifier>[\w:-]+)/$',
views.event_bookings, views.event_bookings,
name='api-event-bookings', name='api-event-bookings',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/check/(?P<event_identifier>[\w:-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/check/(?P<event_identifier>[\w:-]+)/$',
views.event_check, views.event_check,
name='api-event-check', name='api-event-check',
), ),
url( re_path(
r'^agenda/meetings/(?P<meeting_identifier>[\w-]+)/datetimes/$', r'^agenda/meetings/(?P<meeting_identifier>[\w-]+)/datetimes/$',
views.meeting_datetimes, views.meeting_datetimes,
name='api-agenda-meeting-datetimes-legacy', name='api-agenda-meeting-datetimes-legacy',
), ),
url(r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/$', views.meeting_list, name='api-agenda-meetings'), re_path(
url( r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/$', views.meeting_list, name='api-agenda-meetings'
),
re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/(?P<meeting_identifier>[\w-]+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/(?P<meeting_identifier>[\w-]+)/$',
views.meeting_info, views.meeting_info,
name='api-agenda-meetings', name='api-agenda-meetings',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/resources/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/resources/$',
views.agenda_resource_list, views.agenda_resource_list,
name='api-agenda-resources', name='api-agenda-resources',
), ),
url(r'^agenda/(?P<agenda_identifier>[\w-]+)/desks/$', views.agenda_desk_list, name='api-agenda-desks'), re_path(
url( r'^agenda/(?P<agenda_identifier>[\w-]+)/desks/$', views.agenda_desk_list, name='api-agenda-desks'
),
re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/(?P<meeting_identifier>[\w-]+)/datetimes/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/meetings/(?P<meeting_identifier>[\w-]+)/datetimes/$',
views.meeting_datetimes, views.meeting_datetimes,
name='api-agenda-meeting-datetimes', name='api-agenda-meeting-datetimes',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/subscription/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/subscription/$',
views.subscriptions, views.subscriptions,
name='api-agenda-subscriptions', name='api-agenda-subscriptions',
), ),
url( re_path(
r'^agenda/(?P<agenda_identifier>[\w-]+)/subscription/(?P<subscription_pk>\d+)/$', r'^agenda/(?P<agenda_identifier>[\w-]+)/subscription/(?P<subscription_pk>\d+)/$',
views.subscription, views.subscription,
name='api-agenda-subscription', name='api-agenda-subscription',
), ),
url(r'^bookings/$', views.bookings, name='api-bookings'), path('bookings/', views.bookings, name='api-bookings'),
url(r'^booking/(?P<booking_pk>\d+)/$', views.booking, name='api-booking'), path('booking/<int:booking_pk>/', views.booking, name='api-booking'),
url(r'^booking/(?P<booking_pk>\d+)/cancel/$', views.cancel_booking, name='api-cancel-booking'), path('booking/<int:booking_pk>/cancel/', views.cancel_booking, name='api-cancel-booking'),
url(r'^booking/(?P<booking_pk>\d+)/accept/$', views.accept_booking, name='api-accept-booking'), path('booking/<int:booking_pk>/accept/', views.accept_booking, name='api-accept-booking'),
url(r'^booking/(?P<booking_pk>\d+)/anonymize/$', views.anonymize_booking, name='api-anonymize-booking'), path('booking/<int:booking_pk>/anonymize/', views.anonymize_booking, name='api-anonymize-booking'),
url(r'^booking/(?P<booking_pk>\d+)/suspend/$', views.suspend_booking, name='api-suspend-booking'), path('booking/<int:booking_pk>/suspend/', views.suspend_booking, name='api-suspend-booking'),
url(r'^booking/(?P<booking_pk>\d+)/resize/$', views.resize_booking, name='api-resize-booking'), path('booking/<int:booking_pk>/resize/', views.resize_booking, name='api-resize-booking'),
url(r'^booking/(?P<booking_pk>\d+)/ics/$', views.booking_ics, name='api-booking-ics'), path('booking/<int:booking_pk>/ics/', views.booking_ics, name='api-booking-ics'),
url(r'^shared-custody/$', views.shared_custody_agendas, name='api-shared-custody-agendas'), path('shared-custody/', views.shared_custody_agendas, name='api-shared-custody-agendas'),
url( path(
r'^shared-custody/(?P<agenda_pk>\d+)/$', 'shared-custody/<int:agenda_pk>/',
views.shared_custody_agenda, views.shared_custody_agenda,
name='api-shared-custody-agenda', name='api-shared-custody-agenda',
), ),
url( path(
r'^shared-custody/(?P<agenda_pk>\d+)/add-child/$', 'shared-custody/<int:agenda_pk>/add-child/',
views.shared_custody_agenda_add_child, views.shared_custody_agenda_add_child,
name='api-shared-custody-agenda-add-child', name='api-shared-custody-agenda-add-child',
), ),
url(r'^statistics/$', views.statistics_list, name='api-statistics-list'), path('statistics/', views.statistics_list, name='api-statistics-list'),
url(r'^statistics/bookings/$', views.bookings_statistics, name='api-statistics-bookings'), path('statistics/bookings/', views.bookings_statistics, name='api-statistics-bookings'),
] ]

View File

@ -14,435 +14,435 @@
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.conf.urls import url from django.urls import path, re_path
from . import views from . import views
urlpatterns = [ urlpatterns = [
url(r'^$', views.homepage, name='chrono-manager-homepage'), path('', views.homepage, name='chrono-manager-homepage'),
url( path(
r'^unavailability-calendars/$', 'unavailability-calendars/',
views.unavailability_calendar_list, views.unavailability_calendar_list,
name='chrono-manager-unavailability-calendar-list', name='chrono-manager-unavailability-calendar-list',
), ),
url( path(
r'^unavailability-calendar/add/$', 'unavailability-calendar/add/',
views.unavailability_calendar_add, views.unavailability_calendar_add,
name='chrono-manager-unavailability-calendar-add', name='chrono-manager-unavailability-calendar-add',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/$', 'unavailability-calendar/<int:pk>/',
views.unavailability_calendar_view, views.unavailability_calendar_view,
name='chrono-manager-unavailability-calendar-view', name='chrono-manager-unavailability-calendar-view',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/edit/$', 'unavailability-calendar/<int:pk>/edit/',
views.unavailability_calendar_edit, views.unavailability_calendar_edit,
name='chrono-manager-unavailability-calendar-edit', name='chrono-manager-unavailability-calendar-edit',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/delete/$', 'unavailability-calendar/<int:pk>/delete/',
views.unavailability_calendar_delete, views.unavailability_calendar_delete,
name='chrono-manager-unavailability-calendar-delete', name='chrono-manager-unavailability-calendar-delete',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/settings$', 'unavailability-calendar/<int:pk>/settings',
views.unavailability_calendar_settings, views.unavailability_calendar_settings,
name='chrono-manager-unavailability-calendar-settings', name='chrono-manager-unavailability-calendar-settings',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/export$', 'unavailability-calendar/<int:pk>/export',
views.unavailability_calendar_export, views.unavailability_calendar_export,
name='chrono-manager-unavailability-calendar-export', name='chrono-manager-unavailability-calendar-export',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/add-unavailability$', 'unavailability-calendar/<int:pk>/add-unavailability',
views.unavailability_calendar_add_unavailability, views.unavailability_calendar_add_unavailability,
name='chrono-manager-unavailability-calendar-add-unavailability', name='chrono-manager-unavailability-calendar-add-unavailability',
), ),
url( path(
r'^unavailability-calendar/(?P<pk>\d+)/import-unavailabilities/$', 'unavailability-calendar/<int:pk>/import-unavailabilities/',
views.unavailability_calendar_import_unavailabilities, views.unavailability_calendar_import_unavailabilities,
name='chrono-manager-unavailability-calendar-import-unavailabilities', name='chrono-manager-unavailability-calendar-import-unavailabilities',
), ),
url(r'^resources/$', views.resource_list, name='chrono-manager-resource-list'), path('resources/', views.resource_list, name='chrono-manager-resource-list'),
url(r'^resource/add/$', views.resource_add, name='chrono-manager-resource-add'), path('resource/add/', views.resource_add, name='chrono-manager-resource-add'),
url(r'^resource/(?P<pk>\d+)/$', views.resource_view, name='chrono-manager-resource-view'), path('resource/<int:pk>/', views.resource_view, name='chrono-manager-resource-view'),
url( re_path(
r'^resource/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$', r'^resource/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$',
views.resource_monthly_view, views.resource_monthly_view,
name='chrono-manager-resource-month-view', name='chrono-manager-resource-month-view',
), ),
url( re_path(
r'^resource/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$', r'^resource/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.resource_day_view, views.resource_day_view,
name='chrono-manager-resource-day-view', name='chrono-manager-resource-day-view',
), ),
url(r'^resource/(?P<pk>\d+)/edit/$', views.resource_edit, name='chrono-manager-resource-edit'), path('resource/<int:pk>/edit/', views.resource_edit, name='chrono-manager-resource-edit'),
url(r'^resource/(?P<pk>\d+)/delete/$', views.resource_delete, name='chrono-manager-resource-delete'), path('resource/<int:pk>/delete/', views.resource_delete, name='chrono-manager-resource-delete'),
url(r'^categories/$', views.category_list, name='chrono-manager-category-list'), path('categories/', views.category_list, name='chrono-manager-category-list'),
url(r'^category/add/$', views.category_add, name='chrono-manager-category-add'), path('category/add/', views.category_add, name='chrono-manager-category-add'),
url(r'^category/(?P<pk>\d+)/edit/$', views.category_edit, name='chrono-manager-category-edit'), path('category/<int:pk>/edit/', views.category_edit, name='chrono-manager-category-edit'),
url(r'^category/(?P<pk>\d+)/delete/$', views.category_delete, name='chrono-manager-category-delete'), path('category/<int:pk>/delete/', views.category_delete, name='chrono-manager-category-delete'),
url(r'^events-types/$', views.events_type_list, name='chrono-manager-events-type-list'), path('events-types/', views.events_type_list, name='chrono-manager-events-type-list'),
url(r'^events-type/add/$', views.events_type_add, name='chrono-manager-events-type-add'), path('events-type/add/', views.events_type_add, name='chrono-manager-events-type-add'),
url(r'^events-type/(?P<pk>\d+)/edit/$', views.events_type_edit, name='chrono-manager-events-type-edit'), path('events-type/<int:pk>/edit/', views.events_type_edit, name='chrono-manager-events-type-edit'),
url( path(
r'^events-type/(?P<pk>\d+)/delete/$', 'events-type/<int:pk>/delete/',
views.events_type_delete, views.events_type_delete,
name='chrono-manager-events-type-delete', name='chrono-manager-events-type-delete',
), ),
url(r'^agendas/add/$', views.agenda_add, name='chrono-manager-agenda-add'), path('agendas/add/', views.agenda_add, name='chrono-manager-agenda-add'),
url(r'^agendas/import/$', views.agendas_import, name='chrono-manager-agendas-import'), path('agendas/import/', views.agendas_import, name='chrono-manager-agendas-import'),
url(r'^agendas/export/$', views.agendas_export, name='chrono-manager-agendas-export'), path('agendas/export/', views.agendas_export, name='chrono-manager-agendas-export'),
url(r'^agendas/(?P<pk>\d+)/$', views.agenda_view, name='chrono-manager-agenda-view'), path('agendas/<int:pk>/', views.agenda_view, name='chrono-manager-agenda-view'),
url(r'^agendas/(?P<slug>[-_a-zA-Z0-9]+)/$', views.agenda_view, name='chrono-manager-agenda-view'), re_path(r'^agendas/(?P<slug>[-_a-zA-Z0-9]+)/$', views.agenda_view, name='chrono-manager-agenda-view'),
url( path(
r'^agendas/(?P<pk>\d+)/month/$', 'agendas/<int:pk>/month/',
views.agenda_month_redirect_view, views.agenda_month_redirect_view,
name='chrono-manager-agenda-month-redirect-view', name='chrono-manager-agenda-month-redirect-view',
), ),
url( re_path(
r'^agendas/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$', r'^agendas/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$',
views.agenda_monthly_view, views.agenda_monthly_view,
name='chrono-manager-agenda-month-view', name='chrono-manager-agenda-month-view',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/day/$', 'agendas/<int:pk>/day/',
views.agenda_day_redirect_view, views.agenda_day_redirect_view,
name='chrono-manager-agenda-day-redirect-view', name='chrono-manager-agenda-day-redirect-view',
), ),
url( re_path(
r'^agendas/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$', r'^agendas/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/(?P<day>[0-9]+)/$',
views.agenda_day_view, views.agenda_day_view,
name='chrono-manager-agenda-day-view', name='chrono-manager-agenda-day-view',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/open/$', 'agendas/<int:pk>/events/open/',
views.agenda_open_events_view, views.agenda_open_events_view,
name='chrono-manager-agenda-open-events-view', name='chrono-manager-agenda-open-events-view',
), ),
url(r'^agendas/(?P<pk>\d+)/settings$', views.agenda_settings, name='chrono-manager-agenda-settings'), path('agendas/<int:pk>/settings', views.agenda_settings, name='chrono-manager-agenda-settings'),
url( re_path(
r'^agendas/(?P<slug>[-_a-zA-Z0-9]+)/settings/$', r'^agendas/(?P<slug>[-_a-zA-Z0-9]+)/settings/$',
views.agenda_settings_redirect_view, views.agenda_settings_redirect_view,
name='chrono-manager-agenda-settings-redirect', name='chrono-manager-agenda-settings-redirect',
), ),
url(r'^agendas/(?P<pk>\d+)/edit$', views.agenda_edit, name='chrono-manager-agenda-edit'), path('agendas/<int:pk>/edit', views.agenda_edit, name='chrono-manager-agenda-edit'),
url( path(
r'^agendas/(?P<pk>\d+)/booking-delays$', 'agendas/<int:pk>/booking-delays',
views.agenda_booking_delays, views.agenda_booking_delays,
name='chrono-manager-agenda-booking-delays', name='chrono-manager-agenda-booking-delays',
), ),
url(r'^agendas/(?P<pk>\d+)/roles$', views.agenda_roles, name='chrono-manager-agenda-roles'), path('agendas/<int:pk>/roles', views.agenda_roles, name='chrono-manager-agenda-roles'),
url( path(
r'^agendas/(?P<pk>\d+)/display-options$', 'agendas/<int:pk>/display-options',
views.agenda_display_settings, views.agenda_display_settings,
name='chrono-manager-agenda-display-settings', name='chrono-manager-agenda-display-settings',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/check-options$', 'agendas/<int:pk>/check-options',
views.agenda_booking_check_settings, views.agenda_booking_check_settings,
name='chrono-manager-agenda-booking-check-settings', name='chrono-manager-agenda-booking-check-settings',
), ),
url(r'^agendas/(?P<pk>\d+)/delete$', views.agenda_delete, name='chrono-manager-agenda-delete'), path('agendas/<int:pk>/delete', views.agenda_delete, name='chrono-manager-agenda-delete'),
url(r'^agendas/(?P<pk>\d+)/export$', views.agenda_export, name='chrono-manager-agenda-export'), path('agendas/<int:pk>/export', views.agenda_export, name='chrono-manager-agenda-export'),
url(r'^agendas/(?P<pk>\d+)/add-event$', views.agenda_add_event, name='chrono-manager-agenda-add-event'), path('agendas/<int:pk>/add-event', views.agenda_add_event, name='chrono-manager-agenda-add-event'),
url(r'^agendas/(?P<pk>\d+)/duplicate$', views.agenda_duplicate, name='chrono-manager-agenda-duplicate'), path('agendas/<int:pk>/duplicate', views.agenda_duplicate, name='chrono-manager-agenda-duplicate'),
url( path(
r'^agendas/(?P<pk>\d+)/desk-management-toggle$', 'agendas/<int:pk>/desk-management-toggle',
views.agenda_desk_management_toggle_view, views.agenda_desk_management_toggle_view,
name='chrono-manager-agenda-desk-management-toggle-view', name='chrono-manager-agenda-desk-management-toggle-view',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/import-events$', 'agendas/<int:pk>/import-events',
views.agenda_import_events, views.agenda_import_events,
name='chrono-manager-agenda-import-events', name='chrono-manager-agenda-import-events',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/export-events$', 'agendas/<int:pk>/export-events',
views.agenda_export_events, views.agenda_export_events,
name='chrono-manager-agenda-export-events', name='chrono-manager-agenda-export-events',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/notifications$', 'agendas/<int:pk>/notifications',
views.agenda_notifications_settings, views.agenda_notifications_settings,
name='chrono-manager-agenda-notifications-settings', name='chrono-manager-agenda-notifications-settings',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/reminder$', 'agendas/<int:pk>/reminder',
views.agenda_reminder_settings, views.agenda_reminder_settings,
name='chrono-manager-agenda-reminder-settings', name='chrono-manager-agenda-reminder-settings',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/reminder/test/$', 'agendas/<int:pk>/reminder/test/',
views.agenda_reminder_test, views.agenda_reminder_test,
name='chrono-manager-agenda-reminder-test', name='chrono-manager-agenda-reminder-test',
), ),
url( re_path(
r'^agendas/(?P<pk>\d+)/reminder/preview/(?P<type>(email|sms))/$', r'^agendas/(?P<pk>\d+)/reminder/preview/(?P<type>(email|sms))/$',
views.agenda_reminder_preview, views.agenda_reminder_preview,
name='chrono-manager-agenda-reminder-preview', name='chrono-manager-agenda-reminder-preview',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/timesheet$', 'agendas/<int:pk>/events/timesheet',
views.events_timesheet, views.events_timesheet,
name='chrono-manager-events-timesheet', name='chrono-manager-events-timesheet',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/$', 'agendas/<int:pk>/events/<int:event_pk>/',
views.event_view, views.event_view,
name='chrono-manager-event-view', name='chrono-manager-event-view',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/edit$', 'agendas/<int:pk>/events/<int:event_pk>/edit',
views.event_edit, views.event_edit,
name='chrono-manager-event-edit', name='chrono-manager-event-edit',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/duplicate$', 'agendas/<int:pk>/events/<int:event_pk>/duplicate',
views.event_duplicate, views.event_duplicate,
name='chrono-manager-event-duplicate', name='chrono-manager-event-duplicate',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/delete$', 'agendas/<int:pk>/events/<int:event_pk>/delete',
views.event_delete, views.event_delete,
name='chrono-manager-event-delete', name='chrono-manager-event-delete',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/cancel$', 'agendas/<int:pk>/events/<int:event_pk>/cancel',
views.event_cancel, views.event_cancel,
name='chrono-manager-event-cancel', name='chrono-manager-event-cancel',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/check$', 'agendas/<int:pk>/events/<int:event_pk>/check',
views.event_check, views.event_check,
name='chrono-manager-event-check', name='chrono-manager-event-check',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/presence$', 'agendas/<int:pk>/events/<int:event_pk>/presence',
views.event_presence, views.event_presence,
name='chrono-manager-event-presence', name='chrono-manager-event-presence',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/absence$', 'agendas/<int:pk>/events/<int:event_pk>/absence',
views.event_absence, views.event_absence,
name='chrono-manager-event-absence', name='chrono-manager-event-absence',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/checked$', 'agendas/<int:pk>/events/<int:event_pk>/checked',
views.event_checked, views.event_checked,
name='chrono-manager-event-checked', name='chrono-manager-event-checked',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/events/(?P<event_pk>\d+)/timesheet$', 'agendas/<int:pk>/events/<int:event_pk>/timesheet',
views.events_timesheet, views.events_timesheet,
name='chrono-manager-event-timesheet', name='chrono-manager-event-timesheet',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/event_cancellation_report/(?P<report_pk>\d+)/$', 'agendas/<int:pk>/event_cancellation_report/<int:report_pk>/',
views.event_cancellation_report, views.event_cancellation_report,
name='chrono-manager-event-cancellation-report', name='chrono-manager-event-cancellation-report',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/event_cancellation_reports/$', 'agendas/<int:pk>/event_cancellation_reports/',
views.event_cancellation_report_list, views.event_cancellation_report_list,
name='chrono-manager-event-cancellation-report-list', name='chrono-manager-event-cancellation-report-list',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/add-resource/$', 'agendas/<int:pk>/add-resource/',
views.agenda_add_resource, views.agenda_add_resource,
name='chrono-manager-agenda-add-resource', name='chrono-manager-agenda-add-resource',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/resource/(?P<resource_pk>\d+)/delete/$', 'agendas/<int:pk>/resource/<int:resource_pk>/delete/',
views.agenda_delete_resource, views.agenda_delete_resource,
name='chrono-manager-agenda-delete-resource', name='chrono-manager-agenda-delete-resource',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/add-meeting-type$', 'agendas/<int:pk>/add-meeting-type',
views.agenda_add_meeting_type, views.agenda_add_meeting_type,
name='chrono-manager-agenda-add-meeting-type', name='chrono-manager-agenda-add-meeting-type',
), ),
url(r'^meetingtypes/(?P<pk>\d+)/edit$', views.meeting_type_edit, name='chrono-manager-meeting-type-edit'), path('meetingtypes/<int:pk>/edit', views.meeting_type_edit, name='chrono-manager-meeting-type-edit'),
url( path(
r'^meetingtypes/(?P<pk>\d+)/delete$', 'meetingtypes/<int:pk>/delete',
views.meeting_type_delete, views.meeting_type_delete,
name='chrono-manager-meeting-type-delete', name='chrono-manager-meeting-type-delete',
), ),
url( path(
r'^agendas/(?P<agenda_pk>\d+)/desk/(?P<pk>\d+)/add-time-period$', 'agendas/<int:agenda_pk>/desk/<int:pk>/add-time-period',
views.agenda_add_time_period, views.agenda_add_time_period,
name='chrono-manager-agenda-add-time-period', name='chrono-manager-agenda-add-time-period',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/add-time-period$', 'agendas/<int:pk>/add-time-period',
views.virtual_agenda_add_time_period, views.virtual_agenda_add_time_period,
name='chrono-manager-virtual-agenda-add-time-period', name='chrono-manager-virtual-agenda-add-time-period',
), ),
url(r'^timeperiods/(?P<pk>\d+)/edit$', views.time_period_edit, name='chrono-manager-time-period-edit'), path('timeperiods/<int:pk>/edit', views.time_period_edit, name='chrono-manager-time-period-edit'),
url( path(
r'^timeperiods/(?P<pk>\d+)/delete$', 'timeperiods/<int:pk>/delete',
views.time_period_delete, views.time_period_delete,
name='chrono-manager-time-period-delete', name='chrono-manager-time-period-delete',
), ),
url(r'^agendas/(?P<pk>\d+)/add-desk$', views.agenda_add_desk, name='chrono-manager-agenda-add-desk'), path('agendas/<int:pk>/add-desk', views.agenda_add_desk, name='chrono-manager-agenda-add-desk'),
url(r'^desks/(?P<pk>\d+)/edit$', views.desk_edit, name='chrono-manager-desk-edit'), path('desks/<int:pk>/edit', views.desk_edit, name='chrono-manager-desk-edit'),
url(r'^desks/(?P<pk>\d+)/delete$', views.desk_delete, name='chrono-manager-desk-delete'), path('desks/<int:pk>/delete', views.desk_delete, name='chrono-manager-desk-delete'),
url( path(
r'^desk/(?P<pk>\d+)/unavailability-calendar/(?P<unavailability_calendar_pk>\d+)/toggle/$', 'desk/<int:pk>/unavailability-calendar/<int:unavailability_calendar_pk>/toggle/',
views.unavailability_calendar_toggle_view, views.unavailability_calendar_toggle_view,
name='chrono-manager-unavailability-calendar-toggle-view', name='chrono-manager-unavailability-calendar-toggle-view',
), ),
url( path(
r'^agendas/(?P<agenda_pk>\d+)/desk/(?P<pk>\d+)/add-time-period-exception$', 'agendas/<int:agenda_pk>/desk/<int:pk>/add-time-period-exception',
views.agenda_add_time_period_exception, views.agenda_add_time_period_exception,
name='chrono-manager-agenda-add-time-period-exception', name='chrono-manager-agenda-add-time-period-exception',
), ),
url( path(
r'^agendas/desk/(?P<pk>\d+)/import-exceptions-from-ics/$', 'agendas/desk/<int:pk>/import-exceptions-from-ics/',
views.desk_import_time_period_exceptions, views.desk_import_time_period_exceptions,
name='chrono-manager-desk-add-import-time-period-exceptions', name='chrono-manager-desk-add-import-time-period-exceptions',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/add-virtual-member$', 'agendas/<int:pk>/add-virtual-member',
views.agenda_add_virtual_member, views.agenda_add_virtual_member,
name='chrono-manager-agenda-add-virtual-member', name='chrono-manager-agenda-add-virtual-member',
), ),
url( path(
r'^virtual-members/(?P<pk>\d+)/delete$', 'virtual-members/<int:pk>/delete',
views.virtual_member_delete, views.virtual_member_delete,
name='chrono-manager-virtual-member-delete', name='chrono-manager-virtual-member-delete',
), ),
url( path(
r'^time-period-exceptions/(?P<pk>\d+)/edit$', 'time-period-exceptions/<int:pk>/edit',
views.time_period_exception_edit, views.time_period_exception_edit,
name='chrono-manager-time-period-exception-edit', name='chrono-manager-time-period-exception-edit',
), ),
url( path(
r'^time-period-exceptions/(?P<pk>\d+)/delete$', 'time-period-exceptions/<int:pk>/delete',
views.time_period_exception_delete, views.time_period_exception_delete,
name='chrono-manager-time-period-exception-delete', name='chrono-manager-time-period-exception-delete',
), ),
url( path(
r'^time-period-exceptions/(?P<pk>\d+)/exception-extract-list$', 'time-period-exceptions/<int:pk>/exception-extract-list',
views.time_period_exception_extract_list, views.time_period_exception_extract_list,
name='chrono-manager-time-period-exception-extract-list', name='chrono-manager-time-period-exception-extract-list',
), ),
url( path(
r'^time-period-exceptions/(?P<pk>\d+)/exception-list$', 'time-period-exceptions/<int:pk>/exception-list',
views.time_period_exception_list, views.time_period_exception_list,
name='chrono-manager-time-period-exception-list', name='chrono-manager-time-period-exception-list',
), ),
url( path(
r'^time-period-exceptions-source/(?P<pk>\d+)/delete$', 'time-period-exceptions-source/<int:pk>/delete',
views.time_period_exception_source_delete, views.time_period_exception_source_delete,
name='chrono-manager-time-period-exception-source-delete', name='chrono-manager-time-period-exception-source-delete',
), ),
url( path(
r'^time-period-exceptions-source/(?P<pk>\d+)/refresh$', 'time-period-exceptions-source/<int:pk>/refresh',
views.time_period_exception_source_refresh, views.time_period_exception_source_refresh,
name='chrono-manager-time-period-exception-source-refresh', name='chrono-manager-time-period-exception-source-refresh',
), ),
url( path(
r'^time-period-exceptions-source/(?P<pk>\d+)/toggle$', 'time-period-exceptions-source/<int:pk>/toggle',
views.time_period_exception_source_toggle, views.time_period_exception_source_toggle,
name='chrono-manager-time-period-exception-source-toggle', name='chrono-manager-time-period-exception-source-toggle',
), ),
url( path(
r'^time-period-exceptions-source/(?P<pk>\d+)/replace$', 'time-period-exceptions-source/<int:pk>/replace',
views.time_period_exception_source_replace, views.time_period_exception_source_replace,
name='chrono-manager-time-period-exception-source-replace', name='chrono-manager-time-period-exception-source-replace',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/bookings/(?P<booking_pk>\d+)/cancel$', 'agendas/<int:pk>/bookings/<int:booking_pk>/cancel',
views.booking_cancel, views.booking_cancel,
name='chrono-manager-booking-cancel', name='chrono-manager-booking-cancel',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/bookings/(?P<booking_pk>\d+)/presence$', 'agendas/<int:pk>/bookings/<int:booking_pk>/presence',
views.booking_presence, views.booking_presence,
name='chrono-manager-booking-presence', name='chrono-manager-booking-presence',
), ),
url( path(
r'^agendas/(?P<pk>\d+)/bookings/(?P<booking_pk>\d+)/absence$', 'agendas/<int:pk>/bookings/<int:booking_pk>/absence',
views.booking_absence, views.booking_absence,
name='chrono-manager-booking-absence', name='chrono-manager-booking-absence',
), ),
url( re_path(
r'^agendas/events.csv$', r'^agendas/events.csv$',
views.agenda_import_events_sample_csv, views.agenda_import_events_sample_csv,
name='chrono-manager-sample-events-csv', name='chrono-manager-sample-events-csv',
), ),
url( path(
r'^shared-custody/settings/$', 'shared-custody/settings/',
views.shared_custody_settings, views.shared_custody_settings,
name='chrono-manager-shared-custody-settings', name='chrono-manager-shared-custody-settings',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/$', 'shared-custody/<int:pk>/',
views.shared_custody_agenda_view, views.shared_custody_agenda_view,
name='chrono-manager-shared-custody-agenda-view', name='chrono-manager-shared-custody-agenda-view',
), ),
url( re_path(
r'^shared-custody/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$', r'^shared-custody/(?P<pk>\d+)/(?P<year>[0-9]{4})/(?P<month>[0-9]+)/$',
views.shared_custody_agenda_monthly_view, views.shared_custody_agenda_monthly_view,
name='chrono-manager-shared-custody-agenda-month-view', name='chrono-manager-shared-custody-agenda-month-view',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/settings/$', 'shared-custody/<int:pk>/settings/',
views.shared_custody_agenda_settings, views.shared_custody_agenda_settings,
name='chrono-manager-shared-custody-agenda-settings', name='chrono-manager-shared-custody-agenda-settings',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/delete$', 'shared-custody/<int:pk>/delete',
views.shared_custody_agenda_delete, views.shared_custody_agenda_delete,
name='chrono-manager-shared-custody-agenda-delete', name='chrono-manager-shared-custody-agenda-delete',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/add-rule$', 'shared-custody/<int:pk>/add-rule',
views.shared_custody_agenda_add_rule, views.shared_custody_agenda_add_rule,
name='chrono-manager-shared-custody-agenda-add-rule', name='chrono-manager-shared-custody-agenda-add-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/rules/(?P<rule_pk>\d+)/edit$', 'shared-custody/<int:pk>/rules/<int:rule_pk>/edit',
views.shared_custody_agenda_edit_rule, views.shared_custody_agenda_edit_rule,
name='chrono-manager-shared-custody-agenda-edit-rule', name='chrono-manager-shared-custody-agenda-edit-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/rules/(?P<rule_pk>\d+)/delete$', 'shared-custody/<int:pk>/rules/<int:rule_pk>/delete',
views.shared_custody_agenda_delete_rule, views.shared_custody_agenda_delete_rule,
name='chrono-manager-shared-custody-agenda-delete-rule', name='chrono-manager-shared-custody-agenda-delete-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/add-holiday-rule$', 'shared-custody/<int:pk>/add-holiday-rule',
views.shared_custody_agenda_add_holiday_rule, views.shared_custody_agenda_add_holiday_rule,
name='chrono-manager-shared-custody-agenda-add-holiday-rule', name='chrono-manager-shared-custody-agenda-add-holiday-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/holiday-rules/(?P<rule_pk>\d+)/edit$', 'shared-custody/<int:pk>/holiday-rules/<int:rule_pk>/edit',
views.shared_custody_agenda_edit_holiday_rule, views.shared_custody_agenda_edit_holiday_rule,
name='chrono-manager-shared-custody-agenda-edit-holiday-rule', name='chrono-manager-shared-custody-agenda-edit-holiday-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/holiday-rules/(?P<rule_pk>\d+)/delete$', 'shared-custody/<int:pk>/holiday-rules/<int:rule_pk>/delete',
views.shared_custody_agenda_delete_holiday_rule, views.shared_custody_agenda_delete_holiday_rule,
name='chrono-manager-shared-custody-agenda-delete-holiday-rule', name='chrono-manager-shared-custody-agenda-delete-holiday-rule',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/add-period$', 'shared-custody/<int:pk>/add-period',
views.shared_custody_agenda_add_period, views.shared_custody_agenda_add_period,
name='chrono-manager-shared-custody-agenda-add-period', name='chrono-manager-shared-custody-agenda-add-period',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/periods/(?P<period_pk>\d+)/edit$', 'shared-custody/<int:pk>/periods/<int:period_pk>/edit',
views.shared_custody_agenda_edit_period, views.shared_custody_agenda_edit_period,
name='chrono-manager-shared-custody-agenda-edit-period', name='chrono-manager-shared-custody-agenda-edit-period',
), ),
url( path(
r'^shared-custody/(?P<pk>\d+)/periods/(?P<period_pk>\d+)/delete$', 'shared-custody/<int:pk>/periods/<int:period_pk>/delete',
views.shared_custody_agenda_delete_period, views.shared_custody_agenda_delete_period,
name='chrono-manager-shared-custody-agenda-delete-period', name='chrono-manager-shared-custody-agenda-delete-period',
), ),
url(r'^menu.json$', views.menu_json), re_path(r'^menu.json$', views.menu_json),
] ]

View File

@ -15,10 +15,10 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.conf import settings from django.conf import settings
from django.conf.urls import include, url
from django.conf.urls.static import static from django.conf.urls.static import static
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.contrib.staticfiles.urls import staticfiles_urlpatterns from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.urls import include, path, re_path
from .api.urls import urlpatterns as chrono_api_urls from .api.urls import urlpatterns as chrono_api_urls
from .manager.urls import urlpatterns as chrono_manager_urls from .manager.urls import urlpatterns as chrono_manager_urls
@ -26,16 +26,16 @@ from .urls_utils import decorated_includes
from .views import LoginView, LogoutView, homepage from .views import LoginView, LogoutView, homepage
urlpatterns = [ urlpatterns = [
url(r'^$', homepage, name='home'), path('', homepage, name='home'),
url(r'^manage/', decorated_includes(login_required, include(chrono_manager_urls))), re_path(r'^manage/', decorated_includes(login_required, include(chrono_manager_urls))),
url(r'^api/', include(chrono_api_urls)), re_path(r'^api/', include(chrono_api_urls)),
url(r'^logout/$', LogoutView.as_view(), name='auth_logout'), path('logout/', LogoutView.as_view(), name='auth_logout'),
url(r'^login/$', LoginView.as_view(), name='auth_login'), path('login/', LoginView.as_view(), name='auth_login'),
] ]
if 'mellon' in settings.INSTALLED_APPS: if 'mellon' in settings.INSTALLED_APPS:
urlpatterns.append( urlpatterns.append(
url( re_path(
r'^accounts/mellon/', r'^accounts/mellon/',
include('mellon.urls'), include('mellon.urls'),
kwargs={ kwargs={
@ -48,7 +48,7 @@ if settings.DEBUG and 'debug_toolbar' in settings.INSTALLED_APPS:
import debug_toolbar # pylint: disable=import-error import debug_toolbar # pylint: disable=import-error
urlpatterns = [ urlpatterns = [
url(r'^__debug__/', include(debug_toolbar.urls)), re_path(r'^__debug__/', include(debug_toolbar.urls)),
] + urlpatterns ] + urlpatterns
# static and media files # static and media files