summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-12-02 14:15:05 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-12-02 14:15:05 +0100
commit3c3dc92e3aef6c479b0d5f020c7dc8c4ce76e532 (patch)
tree5d4355bb39ea5de6aeaf442d07cf91fcbfa85ebd /archaeological_warehouse/models.py
parentf832138b10e557fc8d4086fcdb7f1383516ccfde (diff)
downloadIshtar-3c3dc92e3aef6c479b0d5f020c7dc8c4ce76e532.tar.bz2
Ishtar-3c3dc92e3aef6c479b0d5f020c7dc8c4ce76e532.zip
Sheet quick actions to add treatments from find, basket and container
Diffstat (limited to 'archaeological_warehouse/models.py')
-rw-r--r--archaeological_warehouse/models.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index 5565bc504..92eaf5d2f 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -21,6 +21,7 @@ import datetime
from django.conf import settings
from django.contrib.gis.db import models
+from django.core.urlresolvers import reverse
from django.db.models import Q
from django.db.models.signals import post_save, post_delete
from django.template.defaultfilters import slugify
@@ -311,7 +312,7 @@ post_save.connect(post_save_cache, sender=ContainerType)
post_delete.connect(post_save_cache, sender=ContainerType)
-class Container(LightHistorizedItem, ImageModel):
+class Container(LightHistorizedItem, ImageModel, OwnPerms):
TABLE_COLS = ['reference', 'container_type__label', 'cached_location',
'cached_division', 'old_reference']
IMAGE_PREFIX = 'containers/'
@@ -570,6 +571,20 @@ class Container(LightHistorizedItem, ImageModel):
def set_localisation_9(self, context, value):
return self.set_localisation(8, value)
+ def get_extra_actions(self, request):
+ """
+ extra actions for the sheet template
+ """
+ # url, base_text, icon, extra_text, extra css class, is a quick action
+ actions = []
+ can_edit_find = self.can_do(request, 'change_find')
+ if can_edit_find:
+ actions += [
+ (reverse('container-add-treatment', args=[self.pk]),
+ _(u"Add treatment"), "fa fa-exchange", "", "", False),
+ ]
+ return actions
+
def pre_save(self):
if not self.index:
q = Container.objects.filter(responsible=self.responsible).order_by(