replaced urls.url with url.re_path equivalent (#68183)

This commit is contained in:
Agate 2022-08-16 14:35:03 +02:00
parent 54eafdbb62
commit b8269f4d3c
16 changed files with 175 additions and 167 deletions

View File

@ -14,27 +14,27 @@
# 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/>.
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from combo.urls_utils import decorated_includes, staff_required
from . import api_views, views
assets_manager_urls = [
url(r'^$', views.assets, name='combo-manager-assets'),
url(r'^slots/(?P<cell_reference>[\w_-]+)/$', views.slot_assets, name='combo-manager-slot-assets'),
url(r'^delete$', views.asset_delete, name='combo-manager-asset-delete'),
url(r'^overwrite/$', views.asset_overwrite, name='combo-manager-asset-overwrite'),
url(r'^upload/$', views.asset_upload, name='combo-manager-asset-upload'),
url(r'^upload/(?P<key>[\w_:-]+)/$', views.slot_asset_upload, name='combo-manager-slot-asset-upload'),
url(r'^delete/(?P<key>[\w_:-]+)/$', views.slot_asset_delete, name='combo-manager-slot-asset-delete'),
url(r'^export/$', views.assets_export, name='combo-manager-assets-export'),
url(r'^import/$', views.assets_import, name='combo-manager-assets-import'),
re_path(r'^$', views.assets, name='combo-manager-assets'),
re_path(r'^slots/(?P<cell_reference>[\w_-]+)/$', views.slot_assets, name='combo-manager-slot-assets'),
re_path(r'^delete$', views.asset_delete, name='combo-manager-asset-delete'),
re_path(r'^overwrite/$', views.asset_overwrite, name='combo-manager-asset-overwrite'),
re_path(r'^upload/$', views.asset_upload, name='combo-manager-asset-upload'),
re_path(r'^upload/(?P<key>[\w_:-]+)/$', views.slot_asset_upload, name='combo-manager-slot-asset-upload'),
re_path(r'^delete/(?P<key>[\w_:-]+)/$', views.slot_asset_delete, name='combo-manager-slot-asset-delete'),
re_path(r'^export/$', views.assets_export, name='combo-manager-assets-export'),
re_path(r'^import/$', views.assets_import, name='combo-manager-assets-import'),
]
urlpatterns = [
url(r'^assets/(?P<key>[\w_:-]+)$', views.serve_asset),
url(r'^manage/assets/', decorated_includes(staff_required, include(assets_manager_urls))),
url(r'^api/assets/set/(?P<key>[\w_:-]+)/$', api_views.view_set, name='api-assets-set'),
url(r'^ajax/assets-export-size/$', views.assets_export_size, name='combo-manager-assets-export-size'),
re_path(r'^assets/(?P<key>[\w_:-]+)$', views.serve_asset),
re_path(r'^manage/assets/', decorated_includes(staff_required, include(assets_manager_urls))),
re_path(r'^api/assets/set/(?P<key>[\w_:-]+)/$', api_views.view_set, name='api-assets-set'),
re_path(r'^ajax/assets-export-size/$', views.assets_export_size, name='combo-manager-assets-export-size'),
]

View File

@ -14,13 +14,13 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from .views import BookingView, CalendarContentAjaxView
urlpatterns = [
url(r'^calendar/book/(?P<pk>[\w,-]+)/$', BookingView.as_view(), name='calendar-booking'),
url(
re_path(r'^calendar/book/(?P<pk>[\w,-]+)/$', BookingView.as_view(), name='calendar-booking'),
re_path(
r'^ajax/calendar/content/(?P<pk>\w+)/$',
CalendarContentAjaxView.as_view(),
name='ajax-calendar-content',

View File

@ -14,32 +14,32 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from . import views
urlpatterns = [
url(
re_path(
r'^api/dashboard/add/(?P<cell_reference>[\w_-]+)/$',
views.dashboard_add_tile,
name='combo-dashboard-add-tile',
),
url(
re_path(
r'^api/dashboard/remove/(?P<cell_reference>[\w_-]+)/$',
views.dashboard_remove_tile,
name='combo-dashboard-remove-tile',
),
url(
re_path(
r'^api/dashboard/auto-tile/(?P<key>[\w_-]+)/$',
views.dashboard_auto_tile,
name='combo-dashboard-auto-tile',
),
url(
re_path(
r'^api/dashboard/reorder/(?P<dashboard_id>[\w]+)/$',
views.dashboard_reorder_tiles,
name='combo-dashboard-reorder-tiles',
),
url(
re_path(
r'^api/dashboard/tile-stats/$',
views.dashboard_tile_stats,
name='combo-dashboard-tile-stats',

View File

@ -14,11 +14,11 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from .views import ajax_gauge_count, dataviz_graph
urlpatterns = [
url(r'^ajax/gauge-count/(?P<cell>[\w_-]+)/$', ajax_gauge_count, name='combo-ajax-gauge-count'),
url(r'^api/dataviz/graph/(?P<cell>[\w_-]+)/$', dataviz_graph, name='combo-dataviz-graph'),
re_path(r'^ajax/gauge-count/(?P<cell>[\w_-]+)/$', ajax_gauge_count, name='combo-ajax-gauge-count'),
re_path(r'^api/dataviz/graph/(?P<cell>[\w_-]+)/$', dataviz_graph, name='combo-dataviz-graph'),
]

View File

@ -14,19 +14,19 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from . import views
gallery_manager_urls = [
url(r'^gallery/(?P<gallery_pk>\w+)/images/add/$', views.image_add, name='combo-gallery-image-add'),
url(r'^gallery/(?P<gallery_pk>\w+)/order$', views.image_order, name='combo-gallery-image-order'),
url(
re_path(r'^gallery/(?P<gallery_pk>\w+)/images/add/$', views.image_add, name='combo-gallery-image-add'),
re_path(r'^gallery/(?P<gallery_pk>\w+)/order$', views.image_order, name='combo-gallery-image-order'),
re_path(
r'^gallery/(?P<gallery_pk>\w+)/images/(?P<pk>\w+)/edit$',
views.image_edit,
name='combo-gallery-image-edit',
),
url(
re_path(
r'^gallery/(?P<gallery_pk>\w+)/images/(?P<pk>\w+)/delete$',
views.image_delete,
name='combo-gallery-image-delete',

View File

@ -14,7 +14,7 @@
# 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/>.
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from combo.urls_utils import decorated_includes, staff_required
@ -51,30 +51,30 @@ from .views import (
)
lingo_manager_urls = [
url('^$', TransactionListView.as_view(), name='lingo-manager-homepage'),
url('^payments/error/$', BasketItemErrorListView.as_view(), name='lingo-manager-payment-error-list'),
url(
re_path('^$', TransactionListView.as_view(), name='lingo-manager-homepage'),
re_path('^payments/error/$', BasketItemErrorListView.as_view(), name='lingo-manager-payment-error-list'),
re_path(
r'^item/(?P<item_id>\d+)/mark-as-notified/$',
BasketItemMarkAsNotifiedView.as_view(),
name='lingo-manager-basket-item-mark-as-notified',
),
url(
re_path(
'^transactions/download-csv/$', download_transactions_csv, name='lingo-manager-transactions-download'
),
url('^regies/$', RegieListView.as_view(), name='lingo-manager-regie-list'),
url('^regies/add/$', RegieCreateView.as_view(), name='lingo-manager-regie-add'),
url(r'^regies/(?P<pk>\w+)/edit$', RegieUpdateView.as_view(), name='lingo-manager-regie-edit'),
url(r'^regies/(?P<pk>\w+)/delete$', RegieDeleteView.as_view(), name='lingo-manager-regie-delete'),
url('^paymentbackends/$', PaymentBackendListView.as_view(), name='lingo-manager-paymentbackend-list'),
url(
re_path('^regies/$', RegieListView.as_view(), name='lingo-manager-regie-list'),
re_path('^regies/add/$', RegieCreateView.as_view(), name='lingo-manager-regie-add'),
re_path(r'^regies/(?P<pk>\w+)/edit$', RegieUpdateView.as_view(), name='lingo-manager-regie-edit'),
re_path(r'^regies/(?P<pk>\w+)/delete$', RegieDeleteView.as_view(), name='lingo-manager-regie-delete'),
re_path('^paymentbackends/$', PaymentBackendListView.as_view(), name='lingo-manager-paymentbackend-list'),
re_path(
'^paymentbackends/add/$', PaymentBackendCreateView.as_view(), name='lingo-manager-paymentbackend-add'
),
url(
re_path(
r'^paymentbackends/(?P<pk>\w+)/edit$',
PaymentBackendUpdateView.as_view(),
name='lingo-manager-paymentbackend-edit',
),
url(
re_path(
r'^paymentbackends/(?P<pk>\w+)/delete$',
PaymentBackendDeleteView.as_view(),
name='lingo-manager-paymentbackend-delete',
@ -82,46 +82,52 @@ lingo_manager_urls = [
]
urlpatterns = [
url('^api/lingo/regies$', RegiesApiView.as_view(), name='api-regies'),
url('^api/lingo/add-basket-item$', AddBasketItemApiView.as_view(), name='api-add-basket-item'),
url('^api/lingo/remove-basket-item$', RemoveBasketItemApiView.as_view(), name='api-remove-basket-item'),
url(
re_path('^api/lingo/regies$', RegiesApiView.as_view(), name='api-regies'),
re_path('^api/lingo/add-basket-item$', AddBasketItemApiView.as_view(), name='api-add-basket-item'),
re_path(
'^api/lingo/remove-basket-item$', RemoveBasketItemApiView.as_view(), name='api-remove-basket-item'
),
re_path(
'^api/lingo/validate-transaction$',
ValidateTransactionApiView.as_view(),
name='api-validate-transaction',
),
url('^api/lingo/cancel-transaction$', CancelTransactionApiView.as_view(), name='api-cancel-transaction'),
url(
re_path(
'^api/lingo/cancel-transaction$', CancelTransactionApiView.as_view(), name='api-cancel-transaction'
),
re_path(
'^api/lingo/transaction-status/(?P<transaction_signature>.+)/$',
TransactionStatusApiView.as_view(),
name='api-transaction-status',
),
url(r'^lingo/pay$', PayView.as_view(), name='lingo-pay'),
url(r'^lingo/cancel/(?P<pk>\w+)/$', CancelItemView.as_view(), name='lingo-cancel-item'),
url(r'^lingo/callback/(?P<regie_pk>\w+)/$', CallbackView.as_view(), name='lingo-callback'),
url(
re_path(r'^lingo/pay$', PayView.as_view(), name='lingo-pay'),
re_path(r'^lingo/cancel/(?P<pk>\w+)/$', CancelItemView.as_view(), name='lingo-cancel-item'),
re_path(r'^lingo/callback/(?P<regie_pk>\w+)/$', CallbackView.as_view(), name='lingo-callback'),
re_path(
r'^lingo/callback-payment-backend/(?P<payment_backend_pk>[A-Za-z0-9_-]+)/$',
CallbackView.as_view(),
name='lingo-callback-payment-backend',
),
url(r'^lingo/return/(?P<regie_pk>\w+)/$', ReturnView.as_view(), name='lingo-return'),
url(
re_path(r'^lingo/return/(?P<regie_pk>\w+)/$', ReturnView.as_view(), name='lingo-return'),
re_path(
r'^lingo/return-payment-backend/(?P<payment_backend_pk>\w+)/(?P<transaction_signature>.+)/$',
ReturnView.as_view(),
name='lingo-return-payment-backend',
),
url(r'^manage/lingo/', decorated_includes(staff_required, include(lingo_manager_urls))),
url(
re_path(r'^manage/lingo/', decorated_includes(staff_required, include(lingo_manager_urls))),
re_path(
r'^lingo/item/(?P<regie_id>[\w,-]+)/(?P<item_crypto_id>[\w,-]+)/pdf$',
ItemDownloadView.as_view(),
name='download-item-pdf',
),
url(
re_path(
r'^lingo/item/(?P<regie_id>[\w,-]+)/(?P<item_crypto_id>[\w,-]+)/$',
ItemView.as_view(),
name='view-item',
),
url(r'^lingo/item/(?P<item_signature>.+)/pay$', BasketItemPayView.as_view(), name='basket-item-pay-view'),
url(r'^lingo/payment-status$', PaymentStatusView.as_view(), name='payment-status'),
url(r'^lingo/self-invoice/(?P<cell_id>\w+)/$', SelfInvoiceView.as_view(), name='lingo-self-invoice'),
re_path(
r'^lingo/item/(?P<item_signature>.+)/pay$', BasketItemPayView.as_view(), name='basket-item-pay-view'
),
re_path(r'^lingo/payment-status$', PaymentStatusView.as_view(), name='payment-status'),
re_path(r'^lingo/self-invoice/(?P<cell_id>\w+)/$', SelfInvoiceView.as_view(), name='lingo-self-invoice'),
]

View File

@ -14,7 +14,7 @@
# 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/>.
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from combo.urls_utils import decorated_includes, staff_required
@ -22,38 +22,38 @@ from . import manager_views
from .views import GeojsonView
maps_manager_urls = [
url('^$', manager_views.ManagerHomeView.as_view(), name='maps-manager-homepage'),
url(
re_path('^$', manager_views.ManagerHomeView.as_view(), name='maps-manager-homepage'),
re_path(
'^layers/add/(?P<kind>geojson|tiles)/$',
manager_views.LayerAddView.as_view(),
name='maps-manager-layer-add',
),
url(
re_path(
r'^layers/(?P<slug>[\w-]+)/edit/$',
manager_views.LayerEditView.as_view(),
name='maps-manager-layer-edit',
),
url(
re_path(
r'^layers/(?P<slug>[\w-]+)/edit/request-parameters/$',
manager_views.LayerEditRequestParametersView.as_view(),
name='maps-manager-layer-edit-request-parameters',
),
url(
re_path(
r'^layers/(?P<slug>[\w-]+)/delete/$',
manager_views.LayerDeleteView.as_view(),
name='maps-manager-layer-delete',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/add-layer/(?P<kind>geojson|tiles)/$',
manager_views.map_cell_add_layer,
name='maps-manager-cell-add-layer',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/layer/(?P<layeroptions_pk>\d+)/edit/$',
manager_views.map_cell_edit_layer,
name='maps-manager-cell-edit-layer',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/layer/(?P<layeroptions_pk>\d+)/delete/$',
manager_views.map_cell_delete_layer,
name='maps-manager-cell-delete-layer',
@ -61,8 +61,8 @@ maps_manager_urls = [
]
urlpatterns = [
url(r'^manage/maps/', decorated_includes(staff_required, include(maps_manager_urls))),
url(
re_path(r'^manage/maps/', decorated_includes(staff_required, include(maps_manager_urls))),
re_path(
r'^ajax/mapcell/geojson/(?P<cell_id>\d+)/(?P<layer_slug>[\w-]+)/$',
GeojsonView.as_view(),
name='mapcell-geojson',

View File

@ -14,13 +14,15 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from .api_views import ack, add, count, forget
urlpatterns = [
url('^api/notification/add/$', add, name='api-notification-add'),
url(r'^api/notification/ack/(?P<notification_id>[\w:_-]+)/$', ack, name='api-notification-ack'),
url(r'^api/notification/forget/(?P<notification_id>[\w:_-]+)/$', forget, name='api-notification-forget'),
url('^api/notification/count/$', count, name='api-notification-count'),
re_path('^api/notification/add/$', add, name='api-notification-add'),
re_path(r'^api/notification/ack/(?P<notification_id>[\w:_-]+)/$', ack, name='api-notification-ack'),
re_path(
r'^api/notification/forget/(?P<notification_id>[\w:_-]+)/$', forget, name='api-notification-forget'
),
re_path('^api/notification/count/$', count, name='api-notification-count'),
]

View File

@ -14,8 +14,8 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from .views import services_js
urlpatterns = [url(r'^__services.js$', services_js)]
urlpatterns = [re_path(r'^__services.js$', services_js)]

View File

@ -14,7 +14,7 @@
# 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/>.
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from combo.urls_utils import decorated_includes, staff_required
@ -34,26 +34,26 @@ from .views import (
)
pwa_manager_urls = [
url('^$', ManagerHomeView.as_view(), name='pwa-manager-homepage'),
url('^navigation/add/$', ManagerAddNavigationEntry.as_view(), name='pwa-manager-navigation-add'),
url(
re_path('^$', ManagerHomeView.as_view(), name='pwa-manager-homepage'),
re_path('^navigation/add/$', ManagerAddNavigationEntry.as_view(), name='pwa-manager-navigation-add'),
re_path(
r'^navigation/edit/(?P<pk>\w+)/$',
ManagerEditNavigationEntry.as_view(),
name='pwa-manager-navigation-edit',
),
url(
re_path(
r'^navigation/delete/(?P<pk>\w+)/$',
ManagerDeleteNavigationEntry.as_view(),
name='pwa-manager-navigation-delete',
),
url('^navigation/order/$', manager_navigation_order, name='pwa-manager-navigation-order'),
re_path('^navigation/order/$', manager_navigation_order, name='pwa-manager-navigation-order'),
]
urlpatterns = [
url('^manifest.json$', manifest_json),
url('^service-worker.js$', service_worker_js),
url('^service-worker-registration.js$', service_worker_registration_js),
url('^api/pwa/push/subscribe$', subscribe_push, name='pwa-subscribe-push'),
url('^__pwa__/offline/$', offline_page),
url(r'^manage/pwa/', decorated_includes(staff_required, include(pwa_manager_urls))),
re_path('^manifest.json$', manifest_json),
re_path('^service-worker.js$', service_worker_js),
re_path('^service-worker-registration.js$', service_worker_registration_js),
re_path('^api/pwa/push/subscribe$', subscribe_push, name='pwa-subscribe-push'),
re_path('^__pwa__/offline/$', offline_page),
re_path(r'^manage/pwa/', decorated_includes(staff_required, include(pwa_manager_urls))),
]

View File

@ -14,7 +14,7 @@
# 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/>.
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from combo.urls_utils import decorated_includes, manager_required
@ -22,22 +22,22 @@ from . import manager_views
from .models import SearchCell
search_manager_urls = [
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_]+-\d+)/engine/(?P<engine_slug>[\w_:-]+)/add/$',
manager_views.page_search_cell_add_engine,
name='combo-manager-page-search-cell-add-engine',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_]+-\d+)/engine/(?P<engine_slug>[\w_:-]+)/edit/$',
manager_views.page_search_cell_update_engine,
name='combo-manager-page-search-cell-update-engine',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_]+-\d+)/engine/(?P<engine_slug>[\w_:-]+)/delete/$',
manager_views.page_search_cell_delete_engine,
name='combo-manager-page-search-cell-delete-engine',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_]+-\d+)/engine/order$',
manager_views.search_engines_order,
name='combo-manager-search-engines-order',
@ -45,8 +45,8 @@ search_manager_urls = [
]
urlpatterns = [
url(r'^manage/search/', decorated_includes(manager_required, include(search_manager_urls))),
url(
re_path(r'^manage/search/', decorated_includes(manager_required, include(search_manager_urls))),
re_path(
r'^ajax/search/(?P<cell_pk>\w+)/(?P<service_slug>[\w_:-]+)/$',
SearchCell.ajax_results_view,
name='combo-search-ajax-results',

View File

@ -14,14 +14,14 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from .views import TrackingCodeView, redirect_crypto_url, tracking_code_search
urlpatterns = [
url(r'^tracking-code/$', TrackingCodeView.as_view(), name='wcs-tracking-code'),
url(r'^api/search/tracking-code/$', tracking_code_search, name='wcs-tracking-code-search'),
url(
re_path(r'^tracking-code/$', TrackingCodeView.as_view(), name='wcs-tracking-code'),
re_path(r'^api/search/tracking-code/$', tracking_code_search, name='wcs-tracking-code-search'),
re_path(
r'^api/wcs/file/(?P<session_key>\w+)/(?P<crypto_url>[\w,-]+)/$',
redirect_crypto_url,
name='wcs-redirect-crypto-url',

View File

@ -15,7 +15,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import ckeditor.views as ckeditor_views
from django.conf.urls import url
from django.conf.urls import re_path
from django.views.decorators.cache import never_cache
from combo.apps.assets import views as assets_views
@ -25,141 +25,141 @@ from .. import plugins
from . import views
urlpatterns = [
url(r'^$', views.homepage, name='combo-manager-homepage'),
url(r'^menu.json$', views.menu_json),
url(r'^site-export$', pages_admin_required(views.site_export), name='combo-manager-site-export'),
url(r'^site-import$', pages_admin_required(views.site_import), name='combo-manager-site-import'),
url(r'^site-settings$', views.site_settings, name='combo-manager-site-settings'),
url(
re_path(r'^$', views.homepage, name='combo-manager-homepage'),
re_path(r'^menu.json$', views.menu_json),
re_path(r'^site-export$', pages_admin_required(views.site_export), name='combo-manager-site-export'),
re_path(r'^site-import$', pages_admin_required(views.site_import), name='combo-manager-site-import'),
re_path(r'^site-settings$', views.site_settings, name='combo-manager-site-settings'),
re_path(
r'^cells/invalid-report/$',
pages_admin_required(views.invalid_cell_report),
name='combo-manager-invalid-cell-report',
),
url(r'^pages/add/$', views.page_add, name='combo-manager-page-add'),
url(r'^pages/(?P<pk>\d+)/$', views.page_view, name='combo-manager-page-view'),
url(
re_path(r'^pages/add/$', views.page_add, name='combo-manager-page-add'),
re_path(r'^pages/(?P<pk>\d+)/$', views.page_view, name='combo-manager-page-view'),
re_path(
r'^pages/(?P<pk>\d+)/template$', views.page_select_template, name='combo-manager-page-select-template'
),
url(r'^pages/(?P<pk>\d+)/visibility$', views.page_visibility, name='combo-manager-page-visibility'),
url(
re_path(r'^pages/(?P<pk>\d+)/visibility$', views.page_visibility, name='combo-manager-page-visibility'),
re_path(
r'^pages/(?P<pk>\d+)/redirection$',
views.page_edit_redirection,
name='combo-manager-page-edit-redirection',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/include-in-navigation$',
views.page_edit_include_in_navigation,
name='combo-manager-page-edit-include-in-navigation',
),
url(r'^pages/(?P<pk>\d+)/slug$', views.page_edit_slug, name='combo-manager-page-edit-slug'),
url(r'^pages/(?P<pk>\d+)/title$', views.page_edit_title, name='combo-manager-page-edit-title'),
url(
re_path(r'^pages/(?P<pk>\d+)/slug$', views.page_edit_slug, name='combo-manager-page-edit-slug'),
re_path(r'^pages/(?P<pk>\d+)/title$', views.page_edit_title, name='combo-manager-page-edit-title'),
re_path(
r'^pages/(?P<pk>\d+)/description$',
views.page_edit_description,
name='combo-manager-page-edit-description',
),
url(r'^pages/(?P<pk>\d+)/picture/$', views.page_edit_picture, name='combo-manager-page-edit-picture'),
url(
re_path(r'^pages/(?P<pk>\d+)/picture/$', views.page_edit_picture, name='combo-manager-page-edit-picture'),
re_path(
r'^pages/(?P<pk>\d+)/remove-picture/$',
views.page_remove_picture,
name='combo-manager-page-remove-picture',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/extra-variables/$',
views.page_edit_extra_variables,
name='combo-manager-page-edit-extra-variables',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/delete$',
pages_admin_required(views.page_delete),
name='combo-manager-page-delete',
),
url(r'^pages/(?P<pk>\d+)/export$', views.page_export, name='combo-manager-page-export'),
url(
re_path(r'^pages/(?P<pk>\d+)/export$', views.page_export, name='combo-manager-page-export'),
re_path(
r'^pages/(?P<pk>\d+)/add/$',
pages_admin_required(views.page_add_child),
name='combo-manager-page-add-child',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/duplicate$',
pages_admin_required(views.page_duplicate),
name='combo-manager-page-duplicate',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/save',
pages_admin_required(views.snapshot_save),
name='combo-manager-page-save',
),
url(
re_path(
r'^pages/(?P<pk>\d+)/edit-roles/$',
pages_admin_required(views.page_edit_roles),
name='combo-manager-page-edit-roles',
),
url(r'^pages/(?P<pk>\d+)/history$', views.page_history, name='combo-manager-page-history'),
url(
re_path(r'^pages/(?P<pk>\d+)/history$', views.page_history, name='combo-manager-page-history'),
re_path(
r'^pages/(?P<page_pk>\d+)/history/(?P<pk>\d+)/$',
pages_admin_required(views.snapshot_restore),
name='combo-manager-snapshot-restore',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/history/(?P<pk>\d+)/export$',
pages_admin_required(views.snapshot_export),
name='combo-manager-snapshot-export',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/add-cell-to-(?P<ph_key>[\w_-]+)/(?P<cell_type>\w+)/(?P<variant>[\w-]+)/$',
views.page_add_cell,
name='combo-manager-page-add-cell',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/$',
views.page_edit_cell,
name='combo-manager-page-edit-cell',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/delete$',
views.page_delete_cell,
name='combo-manager-page-delete-cell',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/duplicate$',
views.page_duplicate_cell,
name='combo-manager-page-duplicate-cell',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/add-link/(?P<link_code>[\w-]+)$',
views.page_list_cell_add_link,
name='combo-manager-page-list-cell-add-link',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/link/(?P<link_cell_reference>[\w_-]+)/$',
views.page_list_cell_edit_link,
name='combo-manager-page-list-cell-edit-link',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/link/(?P<link_cell_reference>[\w_-]+)/delete$',
views.page_list_cell_delete_link,
name='combo-manager-page-list-cell-delete-link',
),
url(
re_path(
r'^pages/(?P<page_pk>\d+)/cell/(?P<cell_reference>[\w_-]+)/order$',
views.link_list_order,
name='combo-manager-link-list-order',
),
url(r'^pages/(?P<page_pk>\d+)/order$', views.cell_order, name='combo-manager-cell-order'),
url(
re_path(r'^pages/(?P<page_pk>\d+)/order$', views.cell_order, name='combo-manager-cell-order'),
re_path(
r'^pages/(?P<page_pk>\d+)/placeholder/(?P<placeholder>[\w_-]+)/options$',
views.placeholder_options,
name='combo-manage-placeholder-options',
),
url(r'^pages/order$', views.page_order, name='combo-manager-page-order'),
url(
re_path(r'^pages/order$', views.page_order, name='combo-manager-page-order'),
re_path(
r'^pages/(?P<page_path>[\w/_-]+)/$',
views.page_redirect_to_edit,
name='combo-manager-page-redirect-to-edit',
),
url(r'^ckeditor/upload/', ckeditor_views.upload, name='ckeditor_upload'),
url(r'^ckeditor/browse/', never_cache(assets_views.browse), name='ckeditor_browse'),
re_path(r'^ckeditor/upload/', ckeditor_views.upload, name='ckeditor_upload'),
re_path(r'^ckeditor/browse/', never_cache(assets_views.browse), name='ckeditor_browse'),
]
urlpatterns = plugins.register_plugins_manager_urls(urlpatterns)

View File

@ -18,7 +18,7 @@ import logging
from functools import wraps
from django.apps import apps
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from django.http import Http404
from django.views.debug import technical_404_response
@ -38,7 +38,7 @@ def get_plugin_includes(plugin, url_serie):
return
urls = getattr(plugin, url_serie)()
if not hasattr(plugin, 'is_enabled'):
return url('^', include(urls))
return re_path('^', include(urls))
def plugin_enabled(func):
@wraps(func)
@ -51,7 +51,7 @@ def get_plugin_includes(plugin, url_serie):
from .urls_utils import decorated_includes
return url('^', decorated_includes(plugin_enabled, include(urls)))
return re_path('^', decorated_includes(plugin_enabled, include(urls)))
def register_plugins_urls(urlpatterns):
@ -78,9 +78,9 @@ def register_plugins_manager_urls(urlpatterns):
if urls:
post_urls.append(urls)
return (
[url('', decorated_includes(staff_required, include(pre_urls)))]
[re_path('', decorated_includes(staff_required, include(pre_urls)))]
+ urlpatterns
+ [url('', decorated_includes(staff_required, include(post_urls)))]
+ [re_path('', decorated_includes(staff_required, include(post_urls)))]
)

View File

@ -14,21 +14,21 @@
# 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/>.
from django.conf.urls import url
from django.conf.urls import re_path
from combo.urls_utils import manager_required
from . import views
urlpatterns = [
url(r'^api/menu-badges/$', views.menu_badges),
url(
re_path(r'^api/menu-badges/$', views.menu_badges),
re_path(
r'^ajax/cell/(?P<page_pk>\d+)/(?P<cell_reference>[\w_]+-\d+)/$',
views.ajax_page_cell,
name='combo-public-ajax-page-cell',
),
url(r'^snapshot/(?P<pk>\w+)/$', manager_required(views.snapshot), name='combo-snapshot-view'),
url(r'__style__/$', views.style),
url(r'__skeleton__/$', views.skeleton),
url(r'', views.page),
re_path(r'^snapshot/(?P<pk>\w+)/$', manager_required(views.snapshot), name='combo-snapshot-view'),
re_path(r'__style__/$', views.style),
re_path(r'__skeleton__/$', views.skeleton),
re_path(r'', views.page),
]

View File

@ -15,7 +15,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.conf import settings
from django.conf.urls import include, url
from django.conf.urls import include, re_path
from django.conf.urls.static import static
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
@ -27,19 +27,19 @@ from .public.views import error404, login, logout, mellon_page_hook
from .urls_utils import decorated_includes, manager_required
urlpatterns = [
url(r'^manage/', decorated_includes(manager_required, include(combo_manager_urls))),
url(r'^admin/', admin.site.urls),
url(r'^logout/$', logout, name='auth_logout'),
url(r'^login/$', login, name='auth_login'),
url(r'^404$', error404),
url(r'^jsi18n$', JavaScriptCatalog.as_view(), name='javascript-catalog'),
re_path(r'^manage/', decorated_includes(manager_required, include(combo_manager_urls))),
re_path(r'^admin/', admin.site.urls),
re_path(r'^logout/$', logout, name='auth_logout'),
re_path(r'^login/$', login, name='auth_login'),
re_path(r'^404$', error404),
re_path(r'^jsi18n$', JavaScriptCatalog.as_view(), name='javascript-catalog'),
]
handler404 = error404
if 'mellon' in settings.INSTALLED_APPS:
urlpatterns.append(
url(
re_path(
r'^accounts/mellon/',
include('mellon.urls'),
kwargs={
@ -57,10 +57,10 @@ if settings.DEBUG and 'debug_toolbar' in settings.INSTALLED_APPS:
import debug_toolbar # pylint: disable=import-error
urlpatterns = [
url(r'^__debug__/', include(debug_toolbar.urls)),
re_path(r'^__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
urlpatterns = plugins.register_plugins_urls(urlpatterns)
# other URLs are handled as public URLs
urlpatterns.append(url(r'', include('combo.public.urls')))
urlpatterns.append(re_path(r'', include('combo.public.urls')))