combo/combo/apps/maps/urls.py

66 lines
2.3 KiB
Python

# combo - content management system
# Copyright (C) 2017 Entr'ouvert
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU Affero General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# 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 combo.urls_utils import decorated_includes, manager_required
from . import manager_views
from .views import GeojsonView
maps_manager_urls = [
url('^$', manager_views.ManagerHomeView.as_view(), name='maps-manager-homepage'),
url(
'^layers/add/(?P<kind>geojson|tiles)/$',
manager_views.LayerAddView.as_view(),
name='maps-manager-layer-add',
),
url(
r'^layers/(?P<slug>[\w-]+)/edit/$',
manager_views.LayerEditView.as_view(),
name='maps-manager-layer-edit',
),
url(
r'^layers/(?P<slug>[\w-]+)/delete/$',
manager_views.LayerDeleteView.as_view(),
name='maps-manager-layer-delete',
),
url(
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(
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(
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',
),
]
urlpatterns = [
url(r'^manage/maps/', decorated_includes(manager_required, include(maps_manager_urls))),
url(
r'^ajax/mapcell/geojson/(?P<cell_id>\d+)/(?P<layer_slug>[\w-]+)/$',
GeojsonView.as_view(),
name='mapcell-geojson',
),
]