2016-10-04 17:07:17 +00:00
|
|
|
from django.conf.urls import url, include
|
2017-07-21 20:48:01 +00:00
|
|
|
|
|
|
|
from app.api.presets import PresetViewSet
|
2020-03-31 18:02:19 +00:00
|
|
|
from app.plugins.views import api_view_handler
|
2016-10-04 17:07:17 +00:00
|
|
|
from .projects import ProjectViewSet
|
2019-11-05 20:47:29 +00:00
|
|
|
from .tasks import TaskViewSet, TaskDownloads, TaskAssets, TaskAssetsImport
|
2020-05-17 19:34:10 +00:00
|
|
|
from .imageuploads import Thumbnail, ImageDownload
|
2017-03-01 18:53:16 +00:00
|
|
|
from .processingnodes import ProcessingNodeViewSet, ProcessingNodeOptionsView
|
2021-10-19 16:46:18 +00:00
|
|
|
from .admin import AdminUserViewSet, AdminGroupViewSet
|
2016-10-13 16:21:12 +00:00
|
|
|
from rest_framework_nested import routers
|
2017-02-08 19:14:24 +00:00
|
|
|
from rest_framework_jwt.views import obtain_jwt_token
|
2020-01-17 18:19:03 +00:00
|
|
|
from .tiler import TileJson, Bounds, Metadata, Tiles, Export
|
2021-06-11 18:22:53 +00:00
|
|
|
from .potree import Scene, CameraView
|
2020-01-17 18:19:03 +00:00
|
|
|
from .workers import CheckTask, GetTaskResult
|
2021-10-19 19:51:44 +00:00
|
|
|
from .users import UsersList
|
2021-10-18 20:42:13 +00:00
|
|
|
from webodm import settings
|
2016-10-04 17:07:17 +00:00
|
|
|
|
|
|
|
router = routers.DefaultRouter()
|
|
|
|
router.register(r'projects', ProjectViewSet)
|
2016-10-18 20:23:10 +00:00
|
|
|
router.register(r'processingnodes', ProcessingNodeViewSet)
|
2022-03-18 06:51:55 +00:00
|
|
|
router.register(r'presets', PresetViewSet, basename='presets')
|
2017-07-21 20:48:01 +00:00
|
|
|
|
2016-10-13 16:21:12 +00:00
|
|
|
tasks_router = routers.NestedSimpleRouter(router, r'projects', lookup='project')
|
2022-03-18 06:51:55 +00:00
|
|
|
tasks_router.register(r'tasks', TaskViewSet, basename='projects-tasks')
|
2016-10-13 16:21:12 +00:00
|
|
|
|
2019-09-12 03:39:09 +00:00
|
|
|
admin_router = routers.DefaultRouter()
|
2022-03-18 06:51:55 +00:00
|
|
|
admin_router.register(r'admin/users', AdminUserViewSet, basename='admin-users')
|
|
|
|
admin_router.register(r'admin/groups', AdminGroupViewSet, basename='admin-groups')
|
2019-09-12 03:39:09 +00:00
|
|
|
|
2016-10-04 17:07:17 +00:00
|
|
|
urlpatterns = [
|
2017-03-01 18:53:16 +00:00
|
|
|
url(r'processingnodes/options/$', ProcessingNodeOptionsView.as_view()),
|
|
|
|
|
2016-10-04 17:07:17 +00:00
|
|
|
url(r'^', include(router.urls)),
|
2016-10-13 16:21:12 +00:00
|
|
|
url(r'^', include(tasks_router.urls)),
|
2019-09-12 03:39:09 +00:00
|
|
|
url(r'^', include(admin_router.urls)),
|
2016-10-13 16:21:12 +00:00
|
|
|
|
2019-11-05 15:06:48 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<tile_type>orthophoto|dsm|dtm)/tiles\.json$', TileJson.as_view()),
|
2019-11-05 20:47:29 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<tile_type>orthophoto|dsm|dtm)/bounds$', Bounds.as_view()),
|
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<tile_type>orthophoto|dsm|dtm)/metadata$', Metadata.as_view()),
|
2022-07-08 18:49:20 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<tile_type>orthophoto|dsm|dtm)/tiles/(?P<z>[\d]+)/(?P<x>[\d]+)/(?P<y>[\d]+)\.?(?P<ext>png|jpg|webp)?$', Tiles.as_view()),
|
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<tile_type>orthophoto|dsm|dtm)/tiles/(?P<z>[\d]+)/(?P<x>[\d]+)/(?P<y>[\d]+)@(?P<scale>[\d]+)x\.?(?P<ext>png|jpg|webp)?$', Tiles.as_view()),
|
2021-11-04 17:27:36 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/(?P<asset_type>orthophoto|dsm|dtm|georeferenced_model)/export$', Export.as_view()),
|
2019-11-05 15:06:48 +00:00
|
|
|
|
2017-07-07 19:34:02 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/download/(?P<asset>.+)$', TaskDownloads.as_view()),
|
2017-01-18 19:49:53 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/assets/(?P<unsafe_asset_path>.+)$', TaskAssets.as_view()),
|
2019-02-20 21:42:20 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/import$', TaskAssetsImport.as_view()),
|
2020-05-17 19:34:10 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/images/thumbnail/(?P<image_filename>.+)$', Thumbnail.as_view()),
|
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/images/download/(?P<image_filename>.+)$', ImageDownload.as_view()),
|
2016-11-09 21:13:43 +00:00
|
|
|
|
2021-06-10 19:08:57 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/3d/scene$', Scene.as_view()),
|
2021-06-11 18:22:53 +00:00
|
|
|
url(r'projects/(?P<project_pk>[^/.]+)/tasks/(?P<pk>[^/.]+)/3d/cameraview$', CameraView.as_view()),
|
2021-06-10 19:08:57 +00:00
|
|
|
|
2020-01-17 18:19:03 +00:00
|
|
|
url(r'workers/check/(?P<celery_task_id>.+)', CheckTask.as_view()),
|
|
|
|
url(r'workers/get/(?P<celery_task_id>.+)', GetTaskResult.as_view()),
|
|
|
|
|
2016-10-04 17:07:17 +00:00
|
|
|
url(r'^auth/', include('rest_framework.urls')),
|
2017-02-08 19:14:24 +00:00
|
|
|
url(r'^token-auth/', obtain_jwt_token),
|
2018-03-19 16:26:10 +00:00
|
|
|
|
2020-03-31 18:02:19 +00:00
|
|
|
url(r'^plugins/(?P<plugin_name>[^/.]+)/(.*)$', api_view_handler)
|
|
|
|
]
|
2021-10-19 19:51:44 +00:00
|
|
|
|
|
|
|
if settings.ENABLE_USERS_API:
|
|
|
|
urlpatterns.append(url(r'users', UsersList.as_view()))
|
|
|
|
|