PEP8 cleanups.
This commit is contained in:
@@ -10,7 +10,7 @@ from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls import ModelPermission
|
||||
from common import (
|
||||
MayanAppConfig, menu_facet, menu_object, menu_secondary, menu_sidebar
|
||||
MayanAppConfig, menu_object, menu_sidebar
|
||||
)
|
||||
from common.widgets import two_state_template
|
||||
from mayan.celery import app
|
||||
|
||||
@@ -44,7 +44,7 @@ link_document_version_signature_list = Link(
|
||||
link_document_version_signature_download = Link(
|
||||
condition=is_detached_signature,
|
||||
text=_('Download'),
|
||||
view='signatures:document_signature_download', args='resolved_object.pk',
|
||||
view='signatures:document_version_signature_download', args='resolved_object.pk',
|
||||
#permissions=(permission_document_version_signature_download,)
|
||||
)
|
||||
link_document_version_signature_upload = Link(
|
||||
|
||||
@@ -4,7 +4,7 @@ import logging
|
||||
|
||||
from django.db import models
|
||||
|
||||
from django_gpg.exceptions import DecryptionError, VerificationError
|
||||
from django_gpg.exceptions import DecryptionError
|
||||
from django_gpg.models import Key
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from datetime import date
|
||||
import logging
|
||||
import uuid
|
||||
|
||||
@@ -11,7 +10,7 @@ from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from model_utils.managers import InheritanceManager
|
||||
|
||||
from django_gpg.exceptions import DecryptionError, VerificationError
|
||||
from django_gpg.exceptions import VerificationError
|
||||
from django_gpg.models import Key
|
||||
from documents.models import DocumentVersion
|
||||
|
||||
@@ -122,7 +121,7 @@ class DetachedSignature(SignatureBaseModel):
|
||||
verify_result = Key.objects.verify_file(
|
||||
file_object=file_object, signature_file=self.signature_file
|
||||
)
|
||||
except VerificationError:
|
||||
except VerificationError as exception:
|
||||
# Not signed
|
||||
logger.debug(
|
||||
'detached signature verification error; %s', exception
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
import time
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.files import File
|
||||
from django.test import TestCase, override_settings
|
||||
|
||||
@@ -13,18 +11,10 @@ from documents.tests import TEST_DOCUMENT_PATH, TEST_DOCUMENT_TYPE
|
||||
|
||||
from ..models import DetachedSignature, EmbeddedSignature
|
||||
|
||||
TEST_SIGNED_DOCUMENT_PATH = os.path.join(
|
||||
settings.BASE_DIR, 'contrib', 'sample_documents', 'mayan_11_1.pdf.gpg'
|
||||
from .literals import (
|
||||
TEST_SIGNED_DOCUMENT_PATH, TEST_SIGNATURE_FILE_PATH, TEST_KEY_FILE,
|
||||
TEST_KEY_ID, TEST_SIGNATURE_ID
|
||||
)
|
||||
TEST_SIGNATURE_FILE_PATH = os.path.join(
|
||||
settings.BASE_DIR, 'contrib', 'sample_documents', 'mayan_11_1.pdf.sig'
|
||||
)
|
||||
TEST_KEY_FILE = os.path.join(
|
||||
settings.BASE_DIR, 'contrib', 'sample_documents',
|
||||
'key0x5F3F7F75D210724D.asc'
|
||||
)
|
||||
TEST_KEY_ID = '5F3F7F75D210724D'
|
||||
TEST_SIGNATURE_ID = 'XVkoGKw35yU1iq11dZPiv7uAY7k'
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
@@ -70,7 +60,7 @@ class DocumentSignaturesTestCase(TestCase):
|
||||
self.assertEqual(signature.signature_id, None)
|
||||
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
signature = EmbeddedSignature.objects.first()
|
||||
|
||||
@@ -223,7 +213,7 @@ class DocumentSignaturesTestCase(TestCase):
|
||||
|
||||
def test_document_no_signature(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
document = self.document_type.new_document(
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from datetime import datetime
|
||||
import logging
|
||||
|
||||
from django.conf import settings
|
||||
@@ -10,15 +9,13 @@ from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import get_object_or_404, render_to_response
|
||||
from django.template import RequestContext
|
||||
from django.utils.html import escape
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls.models import AccessControlList
|
||||
from common.generics import (
|
||||
SingleObjectDeleteView, SingleObjectDetailView, SingleObjectListView
|
||||
)
|
||||
from django_gpg.literals import SIGNATURE_STATE_NONE, SIGNATURE_STATES
|
||||
from documents.models import Document, DocumentVersion
|
||||
from documents.models import DocumentVersion
|
||||
from filetransfers.api import serve_file
|
||||
from permissions import Permission
|
||||
|
||||
@@ -55,6 +52,8 @@ class DocumentVersionSignatureDeleteView(SingleObjectDeleteView):
|
||||
|
||||
class DocumentVersionSignatureDetailView(SingleObjectDetailView):
|
||||
form_class = DocumentVersionSignatureDetailForm
|
||||
object_permission = permission_document_version_signature_view
|
||||
object_permission_related = 'document_version.document'
|
||||
|
||||
def get_extra_context(self):
|
||||
return {
|
||||
@@ -73,6 +72,9 @@ class DocumentVersionSignatureDetailView(SingleObjectDetailView):
|
||||
|
||||
|
||||
class DocumentVersionSignatureListView(SingleObjectListView):
|
||||
object_permission = permission_document_version_signature_view
|
||||
object_permission_related = 'document_version.document'
|
||||
|
||||
def get_document_version(self):
|
||||
return get_object_or_404(DocumentVersion, pk=self.kwargs['pk'])
|
||||
|
||||
@@ -149,8 +151,8 @@ def document_version_signature_upload(request, pk):
|
||||
}, context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def document_signature_download(request, document_pk):
|
||||
document = get_object_or_404(Document, pk=document_pk)
|
||||
def document_signature_download(request, pk):
|
||||
signature = get_object_or_404(DetachedSignature, pk=pk)
|
||||
|
||||
try:
|
||||
Permission.check_permissions(
|
||||
@@ -158,22 +160,13 @@ def document_signature_download(request, document_pk):
|
||||
)
|
||||
except PermissionDenied:
|
||||
AccessControlList.objects.check_access(
|
||||
permission_document_version_signature_download, request.user, document
|
||||
permission_document_version_signature_download, request.user,
|
||||
signature.document_version.signature
|
||||
)
|
||||
|
||||
try:
|
||||
if DocumentVersionSignature.objects.has_detached_signature(document.latest_version):
|
||||
signature = DocumentVersionSignature.objects.detached_signature(
|
||||
document.latest_version
|
||||
)
|
||||
return serve_file(
|
||||
request,
|
||||
signature,
|
||||
save_as='"%s.sig"' % document.filename,
|
||||
content_type='application/octet-stream'
|
||||
)
|
||||
except Exception as exception:
|
||||
messages.error(request, exception)
|
||||
return HttpResponseRedirect(request.META['HTTP_REFERER'])
|
||||
|
||||
return HttpResponseRedirect(request.META['HTTP_REFERER'])
|
||||
return serve_file(
|
||||
request,
|
||||
signature,
|
||||
save_as='"%s.sig"' % signature.document_version.document,
|
||||
content_type='application/octet-stream'
|
||||
)
|
||||
|
||||
@@ -18,7 +18,7 @@ from .settings import setting_zoom_max_level, setting_zoom_min_level
|
||||
|
||||
|
||||
def is_not_current_version(context):
|
||||
return context['object'].document.latest_version.timestamp != context['object'].timestamp
|
||||
return context['resolved_object'].document.latest_version.timestamp != context['resolved_object'].timestamp
|
||||
|
||||
|
||||
def is_first_page(context):
|
||||
|
||||
@@ -49,7 +49,7 @@ class GenericDocumentViewTestCase(GenericViewTestCase):
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object, label='mayan_11_1.pdf'
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
|
||||
Reference in New Issue
Block a user