def ready(self): super(DocumentSignaturesApp, self).ready() DocumentVersion.register_post_save_hook( 1, document_version_post_save_hook) DocumentVersion.register_pre_open_hook(1, document_pre_open_hook) ModelPermission.register(model=Document, permissions=( permission_document_verify, permission_signature_delete, permission_signature_download, permission_signature_upload, )) menu_facet.bind_links(links=(link_document_verify, ), sources=(Document, )) menu_sidebar.bind_links( links=(link_document_signature_upload, link_document_signature_download, link_document_signature_delete), sources=('signatures:document_verify', 'signatures:document_signature_upload', 'signatures:document_signature_download', 'signatures:document_signature_delete'))
except GPGDecryptionError: # At least return the original raw content descriptor.seek(0) return descriptor else: descriptor.close() return StringIO(result.data) else: return descriptor def document_post_save_hook(instance): if not instance.pk: document_signature, created = DocumentVersionSignature.objects.get_or_create( document_version=instance.latest_version, ) register_links(Document, [document_verify], menu_name='form_header') register_links(['signatures:document_verify', 'signatures:document_signature_upload', 'signatures:document_signature_download', 'signatures:document_signature_delete'], [document_signature_upload, document_signature_download, document_signature_delete], menu_name='sidebar') DocumentVersion.register_pre_open_hook(1, document_pre_open_hook) DocumentVersion.register_post_save_hook(1, document_post_save_hook) class_permissions(Document, [ PERMISSION_DOCUMENT_VERIFY, PERMISSION_SIGNATURE_DELETE, PERMISSION_SIGNATURE_DOWNLOAD, PERMISSION_SIGNATURE_UPLOAD, ])
else: return descriptor def document_post_save_hook(instance): if not instance.pk: document_signature, created = DocumentVersionSignature.objects.get_or_create( document_version=instance.latest_version, ) register_links(Document, [document_verify], menu_name='form_header') register_links([ 'signatures:document_verify', 'signatures:document_signature_upload', 'signatures:document_signature_download', 'signatures:document_signature_delete' ], [ document_signature_upload, document_signature_download, document_signature_delete ], menu_name='sidebar') DocumentVersion.register_pre_open_hook(1, document_pre_open_hook) DocumentVersion.register_post_save_hook(1, document_post_save_hook) class_permissions(Document, [ PERMISSION_DOCUMENT_VERIFY, PERMISSION_SIGNATURE_DELETE, PERMISSION_SIGNATURE_DOWNLOAD, PERMISSION_SIGNATURE_UPLOAD, ])