diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2024-10-29 17:50:49 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-02-19 14:43:49 +0100 |
commit | 547a20789faf6bbc9979357c7f65cbe61e56ed07 (patch) | |
tree | 5ede13492f49434468607950769266d643333d11 /archaeological_warehouse | |
parent | fcc0bb255730d43ec2cff78fb8b948d6322a8b68 (diff) | |
download | Ishtar-547a20789faf6bbc9979357c7f65cbe61e56ed07.tar.bz2 Ishtar-547a20789faf6bbc9979357c7f65cbe61e56ed07.zip |
✨ permissions refactoring: link items to user QA forms
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r-- | archaeological_warehouse/models.py | 19 | ||||
-rw-r--r-- | archaeological_warehouse/urls.py | 13 |
2 files changed, 30 insertions, 2 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index 5a854c079..099d6a641 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -394,9 +394,17 @@ class Warehouse( "archaeological_warehouse.change_own_warehouse" ], ) + QA_LINK = QuickAction( + url="warehouse-qa-link", + icon_class="fa fa-link", + text=_("Link to account"), + target="many", + rights=["ishtaradmin"], + ) QUICK_ACTIONS = [ - QA_LOCK, QA_EDIT, + QA_LOCK, + QA_LINK ] objects = UUIDModelManager() @@ -1137,7 +1145,14 @@ class Container( "archaeological_warehouse.change_own_container" ], ) - QUICK_ACTIONS = [QA_EDIT, QA_MOVE, QA_LOCK] + QA_LINK = QuickAction( + url="container-qa-link", + icon_class="fa fa-link", + text=_("Link to account"), + target="many", + rights=["ishtaradmin"], + ) + QUICK_ACTIONS = [QA_EDIT, QA_MOVE, QA_LOCK, QA_LINK] BASE_QUERY_LOCATION = "container_tree_child__container_parent" SERIALIZE_CALL = { diff --git a/archaeological_warehouse/urls.py b/archaeological_warehouse/urls.py index 669732a57..78bc5945c 100644 --- a/archaeological_warehouse/urls.py +++ b/archaeological_warehouse/urls.py @@ -21,6 +21,7 @@ from django.conf.urls import url from django.urls import path from ishtar_common.utils import check_permissions +from ishtar_common.views import QALinkView from archaeological_warehouse import models, views, views_api @@ -150,6 +151,12 @@ urlpatterns = [ kwargs={"model": models.Warehouse}, ), url( + r"^warehouse-qa-link/(?P<pks>[0-9-]+)?/$", + QALinkView.as_view(), + name="warehouse-qa-link", + kwargs={"model": models.Warehouse, "url": "warehouse-qa-link"}, + ), + url( r"^warehouse-qa-bulk-update/(?P<pks>[0-9-]+)?/$", check_permissions([ "archaeological_warehouse.change_warehouse", @@ -248,6 +255,12 @@ urlpatterns = [ kwargs={"model": models.Container}, ), url( + r"^container-qa-link/(?P<pks>[0-9-]+)?/$", + QALinkView.as_view(), + name="container-qa-link", + kwargs={"model": models.Container, "url": "container-qa-link"}, + ), + url( r"container-merge/(?:(?P<page>\d+)/)?$", views.container_merge, name="container_merge", |