diff options
Diffstat (limited to 'archaeological_warehouse/models.py')
| -rw-r--r-- | archaeological_warehouse/models.py | 17 | 
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( | 
