diff options
Diffstat (limited to 'archaeological_warehouse/models.py')
| -rw-r--r-- | archaeological_warehouse/models.py | 17 | 
1 files changed, 15 insertions, 2 deletions
| diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index a0da12601..42a9bb310 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -30,7 +30,7 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy  from ishtar_common.data_importer import post_importer_action  from ishtar_common.models import Document, GeneralType, get_external_id, \      LightHistorizedItem, OwnPerms, Address, Person, post_save_cache, \ -    ImageModel, DashboardFormItem, ExternalIdManager, ShortMenuItem, \ +    DashboardFormItem, ExternalIdManager, ShortMenuItem, \      document_attached_changed, SearchAltName  from ishtar_common.utils import cached_label_changed @@ -316,7 +316,7 @@ post_save.connect(post_save_cache, sender=ContainerType)  post_delete.connect(post_save_cache, sender=ContainerType) -class Container(LightHistorizedItem, ImageModel, OwnPerms): +class Container(LightHistorizedItem, OwnPerms):      SLUG = 'container'      SHOW_URL = 'show-container'      TABLE_COLS = ['reference', 'container_type__label', 'cached_location', @@ -393,6 +393,13 @@ class Container(LightHistorizedItem, ImageModel, OwnPerms):      external_id = models.TextField(_(u"External ID"), blank=True, null=True)      auto_external_id = models.BooleanField(          _(u"External ID is set automatically"), default=False) +    documents = models.ManyToManyField( +        Document, related_name='containers', verbose_name=_(u"Documents"), +        blank=True) +    main_image = models.ForeignKey( +        Document, related_name='main_image_containers', +        on_delete=models.SET_NULL, +        verbose_name=_(u"Main image"), blank=True, null=True)      class Meta:          verbose_name = _(u"Container") @@ -431,6 +438,9 @@ class Container(LightHistorizedItem, ImageModel, OwnPerms):          ]          return u" | ".join(locas) +    def _get_base_image_path(self): +        return self.responsible._get_base_image_path() + u"/" + self.external_id +      @classmethod      def get_query_owns(cls, ishtaruser):          return Q(history_creator=ishtaruser.user_ptr) | \ @@ -631,6 +641,9 @@ class Container(LightHistorizedItem, ImageModel, OwnPerms):  post_save.connect(cached_label_changed, sender=Container) +m2m_changed.connect(document_attached_changed, +                    sender=Container.documents.through) +  class ContainerLocalisation(models.Model):      container = models.ForeignKey(Container, verbose_name=_(u"Container"), | 
