summaryrefslogtreecommitdiff
path: root/archaeological_finds
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2019-09-10 20:49:13 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2019-09-10 20:49:13 +0200
commit8f18e7aa3ef8750faaf8c4cd136827555fdf66e4 (patch)
tree45f1d910b67a30e44015735581ec9cdc6db51cdf /archaeological_finds
parent3d630a998043a9a6a9d61d42f3394b121f045431 (diff)
downloadIshtar-8f18e7aa3ef8750faaf8c4cd136827555fdf66e4.tar.bz2
Ishtar-8f18e7aa3ef8750faaf8c4cd136827555fdf66e4.zip
QA: lock/unlock (sites, operations, context records, finds, containers, warehouses)
Diffstat (limited to 'archaeological_finds')
-rw-r--r--archaeological_finds/models_finds.py6
-rw-r--r--archaeological_finds/urls.py4
-rw-r--r--archaeological_finds/views.py7
3 files changed, 16 insertions, 1 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 9b134bceb..bc6f440bc 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -1399,6 +1399,11 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem,
url="find-qa-bulk-update", icon_class="fa fa-pencil",
text=_(u"Bulk update"), target="many",
rights=['change_find', 'change_own_find'])
+ QA_LOCK = QuickAction(
+ url="find-qa-lock", icon_class="fa fa-lock",
+ text=_(u"Lock/Unlock"), target="many",
+ rights=['change_find', 'change_own_find']
+ )
QUICK_ACTIONS = [
QA_EDIT,
@@ -1416,6 +1421,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem,
rights=['change_find', 'change_own_find'],
module='warehouse'
),
+ QA_LOCK
]
UP_MODEL_QUERY = {
"operation": (pgettext_lazy("key for text search", "operation"),
diff --git a/archaeological_finds/urls.py b/archaeological_finds/urls.py
index 8e01a2931..b36c25888 100644
--- a/archaeological_finds/urls.py
+++ b/archaeological_finds/urls.py
@@ -142,6 +142,10 @@ urlpatterns = [
views.QAFindTreatmentFormView.as_view()),
name='find-qa-packaging'),
+ url(r'^find-qa-lock/(?P<pks>[0-9-]+)?/$',
+ views.QAFindLockView.as_view(), name='find-qa-lock',
+ kwargs={"model": models.Find}),
+
url(r'^treatment_creation/(?P<step>.+)?$',
check_rights(['change_find', 'change_own_find'])(
views.treatment_creation_wizard), name='treatment_creation'),
diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py
index e5119b9f3..1b49c8f13 100644
--- a/archaeological_finds/views.py
+++ b/archaeological_finds/views.py
@@ -47,7 +47,7 @@ from archaeological_operations.forms import FinalAdministrativeActDeleteForm
from archaeological_finds import forms
from ishtar_common.views import get_autocomplete_generic, IshtarMixin, \
- LoginRequiredMixin, QAItemEditForm, QAItemForm
+ LoginRequiredMixin, QAItemEditForm, QAItemForm, QABaseLockView
from ishtar_common.views_item import display_item, get_item, show_item, \
revert_item, get_autocomplete_item, get_autocomplete_queries
@@ -1018,6 +1018,11 @@ class QAFindbasketDuplicateFormView(QAItemForm):
return data
+class QAFindLockView(QABaseLockView):
+ model = models.Find
+ base_url = "find-qa-lock"
+
+
class PublicFindAPI(APIView):
authentication_classes = (authentication.TokenAuthentication,)
permission_classes = (permissions.IsAuthenticated,)