diff options
Diffstat (limited to 'archaeological_warehouse')
| -rw-r--r-- | archaeological_warehouse/urls.py | 24 | ||||
| -rw-r--r-- | archaeological_warehouse/views_api.py | 23 | 
2 files changed, 45 insertions, 2 deletions
diff --git a/archaeological_warehouse/urls.py b/archaeological_warehouse/urls.py index e737125b7..870008de4 100644 --- a/archaeological_warehouse/urls.py +++ b/archaeological_warehouse/urls.py @@ -18,11 +18,11 @@  # See the file COPYING for details.  from django.conf.urls import url +from django.urls import path  from ishtar_common.utils import check_rights -from archaeological_warehouse import views -from archaeological_warehouse import models +from archaeological_warehouse import models, views, views_api  # be careful: each check_rights must be relevant with ishtar_menu @@ -241,4 +241,24 @@ urlpatterns = [          views.GenerateStatsWarehouse.as_view(),          name="generate-stats-warehouse",      ), +    url( +        r"api/facets/warehouse/$", views_api.FacetWarehouseAPIView.as_view(), +        name="api-facets-warehouse" +    ), +    url( +        r"api/search/warehouse/$", views_api.SearchWarehouseAPI.as_view(), +        name="api-search-warehouse" +    ), +    path( +        "api/get/warehouse/<int:pk>/", views_api.GetWarehouseAPI.as_view(), +        name="api-get-warehouse" +    ), +    url( +        r"api/search/container/$", views_api.SearchContainerAPI.as_view(), +        name="api-search-container" +    ), +    path( +        "api/get/container/<int:pk>/", views_api.GetContainerAPI.as_view(), +        name="api-get-container" +    ),  ] diff --git a/archaeological_warehouse/views_api.py b/archaeological_warehouse/views_api.py new file mode 100644 index 000000000..468fe08c2 --- /dev/null +++ b/archaeological_warehouse/views_api.py @@ -0,0 +1,23 @@ +from ishtar_common.rest import SearchAPIView, FacetAPIView, GetAPIView +from archaeological_warehouse import models, forms + + +class FacetWarehouseAPIView(FacetAPIView): +    models = [models.Warehouse, models.Container] +    select_forms = [forms.WarehouseSelect, forms.ContainerSelect] + + +class SearchWarehouseAPI(SearchAPIView): +    model = models.Warehouse + + +class SearchContainerAPI(SearchAPIView): +    model = models.Container + + +class GetWarehouseAPI(GetAPIView): +    model = models.Warehouse + + +class GetContainerAPI(GetAPIView): +    model = models.Container  | 
