Don't check for embedded signature on save.

This commit is contained in:
Roberto Rosario
2015-06-05 00:58:08 -04:00
parent 678782154b
commit 1e02b4dadf

View File

@@ -24,20 +24,20 @@ class DocumentVersionSignature(models.Model):
Model that describes a document version signature properties Model that describes a document version signature properties
""" """
document_version = models.ForeignKey(DocumentVersion, verbose_name=_('Document version'), editable=False) document_version = models.ForeignKey(DocumentVersion, verbose_name=_('Document version'), editable=False)
signature_file = models.FileField(blank=True, null=True, upload_to=upload_to, storage=storage_backend, verbose_name=_('Signature file'), editable=False) signature_file = models.FileField(blank=True, null=True, upload_to=upload_to, storage=storage_backend, verbose_name=_('Signature file'))
has_embedded_signature = models.BooleanField(default=False, verbose_name=_('Has embedded signature'), editable=False) has_embedded_signature = models.BooleanField(default=False, verbose_name=_('Has embedded signature'))
objects = DocumentVersionSignatureManager() objects = DocumentVersionSignatureManager()
def delete_detached_signature_file(self): def delete_detached_signature_file(self):
self.signature_file.storage.delete(self.signature_file.path) self.signature_file.storage.delete(self.signature_file.path)
def save(self, *args, **kwargs): def check_for_embedded_signature(self):
if not self.pk: logger.debug('checking for embedded signature')
descriptor = self.document_version.open(raw=True)
self.has_embedded_signature = gpg.has_embedded_signature(descriptor) with self.document_version.open(raw=True) as file_object:
descriptor.close() self.has_embedded_signature = gpg.has_embedded_signature(file_object)
super(DocumentVersionSignature, self).save(*args, **kwargs) self.save()
class Meta: class Meta:
verbose_name = _('Document version signature') verbose_name = _('Document version signature')