PEP8 cleanups
This commit is contained in:
@@ -2,31 +2,27 @@ from __future__ import absolute_import
|
||||
|
||||
from django.dispatch import receiver
|
||||
|
||||
from south.signals import post_migrate
|
||||
|
||||
from navigation.api import register_links, register_multi_item_links
|
||||
from project_setup.api import register_setup
|
||||
|
||||
from south.signals import post_migrate
|
||||
|
||||
from .classes import (AccessHolder, AccessObjectClass, ClassAccessHolder,
|
||||
AccessObject)
|
||||
from .links import (acl_detail, acl_grant, acl_revoke, acl_holder_new,
|
||||
acl_setup_valid_classes, acl_class_list, acl_class_acl_list,
|
||||
acl_class_acl_detail, acl_class_new_holder_for, acl_class_grant,
|
||||
acl_class_revoke)
|
||||
from .classes import (AccessHolder, AccessObject, AccessObjectClass,
|
||||
ClassAccessHolder)
|
||||
from .links import (acl_class_acl_detail, acl_class_acl_list, acl_class_grant,
|
||||
acl_class_list, acl_class_new_holder_for,
|
||||
acl_class_revoke, acl_detail, acl_grant, acl_holder_new,
|
||||
acl_revoke, acl_setup_valid_classes)
|
||||
from .models import CreatorSingleton
|
||||
|
||||
register_links(AccessHolder, [acl_detail])
|
||||
register_multi_item_links(['acls:acl_detail'], [acl_grant, acl_revoke])
|
||||
|
||||
register_links([AccessObject], [acl_holder_new], menu_name='sidebar')
|
||||
|
||||
register_setup(acl_setup_valid_classes)
|
||||
register_links(['acls:acl_setup_valid_classes', 'acls:acl_class_acl_list', 'acls:acl_class_new_holder_for', 'acls:acl_class_acl_detail', 'acls:acl_class_multiple_grant', 'acls:acl_class_multiple_revoke'], [acl_class_list], menu_name='secondary_menu')
|
||||
|
||||
register_links(ClassAccessHolder, [acl_class_acl_detail])
|
||||
|
||||
register_links(AccessObjectClass, [acl_class_acl_list, acl_class_new_holder_for])
|
||||
register_links(AccessHolder, [acl_detail])
|
||||
register_links(['acls:acl_setup_valid_classes', 'acls:acl_class_acl_list', 'acls:acl_class_new_holder_for', 'acls:acl_class_acl_detail', 'acls:acl_class_multiple_grant', 'acls:acl_class_multiple_revoke'], [acl_class_list], menu_name='secondary_menu')
|
||||
register_links(ClassAccessHolder, [acl_class_acl_detail])
|
||||
register_multi_item_links(['acls:acl_detail'], [acl_grant, acl_revoke])
|
||||
register_multi_item_links(['acls:acl_class_acl_detail'], [acl_class_grant, acl_class_revoke])
|
||||
register_setup(acl_setup_valid_classes)
|
||||
|
||||
|
||||
@receiver(post_migrate, dispatch_uid='create_creator_user')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .permissions import (ACLS_EDIT_ACL, ACLS_VIEW_ACL,
|
||||
ACLS_CLASS_EDIT_ACL, ACLS_CLASS_VIEW_ACL)
|
||||
from .permissions import (ACLS_CLASS_EDIT_ACL, ACLS_CLASS_VIEW_ACL,
|
||||
ACLS_EDIT_ACL, ACLS_VIEW_ACL)
|
||||
|
||||
acl_list = {'text': _(u'ACLs'), 'view': 'acls:acl_list', 'famfam': 'lock', 'permissions': [ACLS_VIEW_ACL]}
|
||||
acl_detail = {'text': _(u'Details'), 'view': 'acls:acl_detail', 'args': ['access_object.gid', 'object.gid'], 'famfam': 'key_go', 'permissions': [ACLS_VIEW_ACL]}
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
import logging
|
||||
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.template import (TemplateSyntaxError, Library,
|
||||
Node, Variable, VariableDoesNotExist)
|
||||
|
||||
from django.template import (Library, Node, TemplateSyntaxError, Variable,
|
||||
VariableDoesNotExist)
|
||||
|
||||
from acls.models import AccessEntry
|
||||
|
||||
register = Library()
|
||||
logger = logging.getLogger(__name__)
|
||||
register = Library()
|
||||
|
||||
|
||||
class CheckAccessNode(Node):
|
||||
|
||||
@@ -7,8 +7,8 @@ from django.contrib import messages
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.core.exceptions import ObjectDoesNotExist, PermissionDenied
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseRedirect, Http404
|
||||
from django.shortcuts import render_to_response, get_object_or_404
|
||||
from django.http import Http404, HttpResponseRedirect
|
||||
from django.shortcuts import get_object_or_404, render_to_response
|
||||
from django.template import RequestContext
|
||||
from django.utils.http import urlencode
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
@@ -19,11 +19,11 @@ from permissions.models import Permission
|
||||
|
||||
from .api import get_class_permissions_for
|
||||
from .classes import (AccessHolder, AccessObject, AccessObjectClass,
|
||||
ClassAccessHolder)
|
||||
from .forms import HolderSelectionForm, ClassHolderSelectionForm
|
||||
ClassAccessHolder)
|
||||
from .forms import ClassHolderSelectionForm, HolderSelectionForm
|
||||
from .models import AccessEntry, DefaultAccessEntry
|
||||
from .permissions import (ACLS_EDIT_ACL, ACLS_VIEW_ACL,
|
||||
ACLS_CLASS_EDIT_ACL, ACLS_CLASS_VIEW_ACL)
|
||||
from .permissions import (ACLS_EDIT_ACL, ACLS_CLASS_EDIT_ACL,
|
||||
ACLS_CLASS_VIEW_ACL, ACLS_VIEW_ACL)
|
||||
from .widgets import object_w_content_type_icon
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
@@ -61,7 +61,7 @@ def acl_list_for(request, obj, extra_context=None):
|
||||
context.update(extra_context)
|
||||
|
||||
return render_to_response('main/generic_list.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_list(request, app_label, model_name, object_id):
|
||||
@@ -128,11 +128,8 @@ def acl_detail_for(request, actor, obj):
|
||||
],
|
||||
}
|
||||
|
||||
return render_to_response(
|
||||
'main/generic_detail.html',
|
||||
context,
|
||||
context_instance=RequestContext(request)
|
||||
)
|
||||
return render_to_response('main/generic_detail.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_grant(request):
|
||||
@@ -225,7 +222,7 @@ def acl_grant(request):
|
||||
context['object'] = navigation_object.source_object
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_revoke(request):
|
||||
@@ -318,7 +315,7 @@ def acl_revoke(request):
|
||||
context['object'] = navigation_object.source_object
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_new_holder_for(request, obj, extra_context=None, navigation_object=None):
|
||||
@@ -364,7 +361,7 @@ def acl_new_holder_for(request, obj, extra_context=None, navigation_object=None)
|
||||
context.update(extra_context)
|
||||
|
||||
return render_to_response('main/generic_form.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_holder_new(request, access_object_gid):
|
||||
@@ -390,7 +387,7 @@ def acl_setup_valid_classes(request):
|
||||
}
|
||||
|
||||
return render_to_response('main/generic_list.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_class_acl_list(request, access_object_class_gid):
|
||||
@@ -414,7 +411,7 @@ def acl_class_acl_list(request, access_object_class_gid):
|
||||
}
|
||||
|
||||
return render_to_response('main/generic_list.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_class_acl_detail(request, access_object_class_gid, holder_object_gid):
|
||||
@@ -432,10 +429,9 @@ def acl_class_acl_detail(request, access_object_class_gid, holder_object_gid):
|
||||
'name': u'main/generic_list_subtemplate.html',
|
||||
'context': {
|
||||
'title': _(u'Permissions available to: %(actor)s for class %(class)s' % {
|
||||
'actor': actor,
|
||||
'class': access_object_class
|
||||
}
|
||||
),
|
||||
'actor': actor,
|
||||
'class': access_object_class
|
||||
}),
|
||||
'object_list': permission_list,
|
||||
'extra_columns': [
|
||||
{'name': _(u'Namespace'), 'attribute': 'namespace'},
|
||||
@@ -487,7 +483,7 @@ def acl_class_new_holder_for(request, access_object_class_gid):
|
||||
}
|
||||
|
||||
return render_to_response('main/generic_form.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_class_multiple_grant(request):
|
||||
@@ -566,7 +562,7 @@ def acl_class_multiple_grant(request):
|
||||
context['object'] = navigation_object
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def acl_class_multiple_revoke(request):
|
||||
@@ -645,4 +641,4 @@ def acl_class_multiple_revoke(request):
|
||||
context['object'] = navigation_object
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
@@ -2,22 +2,23 @@ from __future__ import absolute_import
|
||||
|
||||
from datetime import timedelta
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls.api import class_permissions
|
||||
from documents.models import Document
|
||||
from mayan.celery import app
|
||||
from history.api import register_history_type
|
||||
from navigation.api import register_links, register_top_menu
|
||||
|
||||
from .events import (HISTORY_DOCUMENT_CHECKED_OUT, HISTORY_DOCUMENT_CHECKED_IN,
|
||||
HISTORY_DOCUMENT_AUTO_CHECKED_IN, HISTORY_DOCUMENT_FORCEFUL_CHECK_IN)
|
||||
from .links import checkout_list, checkout_document, checkout_info, checkin_document
|
||||
from .events import (HISTORY_DOCUMENT_AUTO_CHECKED_IN,
|
||||
HISTORY_DOCUMENT_CHECKED_OUT,
|
||||
HISTORY_DOCUMENT_CHECKED_IN,
|
||||
HISTORY_DOCUMENT_FORCEFUL_CHECK_IN)
|
||||
from .links import (checkin_document, checkout_document, checkout_info,
|
||||
checkout_list)
|
||||
from .models import DocumentCheckout
|
||||
from .permissions import (PERMISSION_DOCUMENT_CHECKOUT,
|
||||
PERMISSION_DOCUMENT_CHECKIN, PERMISSION_DOCUMENT_CHECKIN_OVERRIDE,
|
||||
PERMISSION_DOCUMENT_RESTRICTIONS_OVERRIDE)
|
||||
from .tasks import task_check_expired_check_outs
|
||||
from .permissions import (PERMISSION_DOCUMENT_CHECKIN,
|
||||
PERMISSION_DOCUMENT_CHECKIN_OVERRIDE,
|
||||
PERMISSION_DOCUMENT_CHECKOUT,
|
||||
PERMISSION_DOCUMENT_RESTRICTIONS_OVERRIDE)
|
||||
|
||||
CHECK_EXPIRED_CHECK_OUTS_INTERVAL = 60 # Lowest check out expiration allowed
|
||||
|
||||
@@ -29,9 +30,14 @@ def initialize_document_checkout_extra_methods():
|
||||
Document.add_to_class('checkout_state', lambda document: DocumentCheckout.objects.document_checkout_state(document))
|
||||
Document.add_to_class('is_new_versions_allowed', lambda document, user=None: DocumentCheckout.objects.is_document_new_versions_allowed(document, user))
|
||||
|
||||
register_top_menu(name='checkouts', link=checkout_list)
|
||||
register_links(Document, [checkout_info], menu_name='form_header')
|
||||
register_links(['checkout_info', 'checkout_document', 'checkin_document'], [checkout_document, checkin_document], menu_name="sidebar")
|
||||
|
||||
app.conf.CELERYBEAT_SCHEDULE.update({
|
||||
'check_expired_check_outs': {
|
||||
'task': 'checkouts.tasks.task_check_expired_check_outs',
|
||||
'schedule': timedelta(seconds=CHECK_EXPIRED_CHECK_OUTS_INTERVAL),
|
||||
'options': {'queue': 'checkouts'}
|
||||
},
|
||||
})
|
||||
|
||||
class_permissions(Document, [
|
||||
PERMISSION_DOCUMENT_CHECKOUT,
|
||||
@@ -46,10 +52,6 @@ register_history_type(HISTORY_DOCUMENT_CHECKED_IN)
|
||||
register_history_type(HISTORY_DOCUMENT_AUTO_CHECKED_IN)
|
||||
register_history_type(HISTORY_DOCUMENT_FORCEFUL_CHECK_IN)
|
||||
|
||||
app.conf.CELERYBEAT_SCHEDULE.update({
|
||||
'check_expired_check_outs': {
|
||||
'task': 'checkouts.tasks.task_check_expired_check_outs',
|
||||
'schedule': timedelta(seconds=CHECK_EXPIRED_CHECK_OUTS_INTERVAL),
|
||||
'options': {'queue': 'checkouts'}
|
||||
},
|
||||
})
|
||||
register_links(Document, [checkout_info], menu_name='form_header')
|
||||
register_links(['checkout_info', 'checkout_document', 'checkin_document'], [checkout_document, checkin_document], menu_name="sidebar")
|
||||
register_top_menu(name='checkouts', link=checkout_list)
|
||||
|
||||
@@ -4,7 +4,7 @@ from django.contrib import messages
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import render_to_response, get_object_or_404
|
||||
from django.shortcuts import get_object_or_404, render_to_response
|
||||
from django.template import RequestContext
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
@@ -19,23 +19,23 @@ from permissions.models import Permission
|
||||
from .exceptions import DocumentAlreadyCheckedOut, DocumentNotCheckedOut
|
||||
from .forms import DocumentCheckoutForm
|
||||
from .models import DocumentCheckout
|
||||
from .permissions import (PERMISSION_DOCUMENT_CHECKOUT, PERMISSION_DOCUMENT_CHECKIN,
|
||||
PERMISSION_DOCUMENT_CHECKIN_OVERRIDE)
|
||||
from .permissions import (PERMISSION_DOCUMENT_CHECKIN,
|
||||
PERMISSION_DOCUMENT_CHECKIN_OVERRIDE,
|
||||
PERMISSION_DOCUMENT_CHECKOUT)
|
||||
from .widgets import checkout_widget
|
||||
|
||||
|
||||
def checkout_list(request):
|
||||
|
||||
return document_list(
|
||||
request,
|
||||
object_list=DocumentCheckout.objects.checked_out_documents(),
|
||||
title=_(u'checked out documents'),
|
||||
extra_context={
|
||||
'extra_columns': [
|
||||
{'name': _(u'Checkout user'), 'attribute': encapsulate(lambda document: get_object_name(document.checkout_info().user_object, display_object_type=False))},
|
||||
{'name': _(u'Checkout time and date'), 'attribute': encapsulate(lambda document: document.checkout_info().checkout_datetime)},
|
||||
{'name': _(u'Checkout expiration'), 'attribute': encapsulate(lambda document: document.checkout_info().expiration_datetime)},
|
||||
],
|
||||
'extra_columns': [
|
||||
{'name': _(u'Checkout user'), 'attribute': encapsulate(lambda document: get_object_name(document.checkout_info().user_object, display_object_type=False))},
|
||||
{'name': _(u'Checkout time and date'), 'attribute': encapsulate(lambda document: document.checkout_info().checkout_datetime)},
|
||||
{'name': _(u'Checkout expiration'), 'attribute': encapsulate(lambda document: document.checkout_info().expiration_datetime)},
|
||||
],
|
||||
}
|
||||
)
|
||||
|
||||
@@ -143,4 +143,4 @@ def checkin_document(request, document_pk):
|
||||
context['title'] = _(u'Are you sure you wish to check in document: %s?') % document
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
@@ -7,7 +7,6 @@ from django.contrib.auth import models as auth_models
|
||||
from django.contrib.auth.models import User
|
||||
from django.db.models.signals import post_save
|
||||
from django.dispatch import receiver
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from south.signals import post_migrate
|
||||
|
||||
|
||||
@@ -5,14 +5,13 @@ import os
|
||||
from django import forms
|
||||
from django.conf import settings
|
||||
from django.contrib.auth import authenticate
|
||||
from django.contrib.auth.forms import AuthenticationForm
|
||||
from django.contrib.auth.models import User
|
||||
from django.db import models
|
||||
from django.utils.html import escape
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .utils import return_attrib
|
||||
from .widgets import DetailSelectMultiple, PlainWidget, EmailInput
|
||||
from .widgets import EmailInput, DetailSelectMultiple, PlainWidget
|
||||
|
||||
|
||||
class DetailForm(forms.ModelForm):
|
||||
@@ -165,7 +164,7 @@ class EmailAuthenticationForm(forms.Form):
|
||||
|
||||
def check_for_test_cookie(self):
|
||||
warnings.warn('check_for_test_cookie is deprecated; ensure your login '
|
||||
'view is CSRF-protected.', DeprecationWarning)
|
||||
'view is CSRF-protected.', DeprecationWarning)
|
||||
|
||||
def get_user_id(self):
|
||||
if self.user_cache:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import re
|
||||
|
||||
from django.template import (Node, TemplateSyntaxError, Library,
|
||||
Variable, Context)
|
||||
from django.template import (Context, Library, Node, TemplateSyntaxError,
|
||||
Variable)
|
||||
from django.template.loader import get_template
|
||||
|
||||
register = Library()
|
||||
|
||||
@@ -4,7 +4,6 @@ from __future__ import absolute_import
|
||||
import logging
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import string
|
||||
import tempfile
|
||||
import types
|
||||
@@ -268,7 +267,7 @@ def load_backend(backend_string):
|
||||
try:
|
||||
return getattr(import_module(module_name), klass)
|
||||
except ImportError as exception:
|
||||
logger.debug('error importing: %s' % backend_string)
|
||||
logger.debug('error importing: %s; %s' % (backend_string, exception))
|
||||
raise
|
||||
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ from django.contrib.auth.models import User
|
||||
from django.contrib.auth.views import login, password_change
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.conf import settings
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import redirect, render_to_response
|
||||
@@ -71,8 +72,8 @@ def assign_remove(request, left_list, right_list, add_method, remove_method, lef
|
||||
if request.method == 'POST':
|
||||
if u'%s-submit' % left_list_name in request.POST.keys():
|
||||
unselected_list = ChoiceForm(request.POST,
|
||||
prefix=left_list_name,
|
||||
choices=left_list())
|
||||
prefix=left_list_name,
|
||||
choices=left_list())
|
||||
if unselected_list.is_valid():
|
||||
for selection in unselected_list.cleaned_data['selection']:
|
||||
if grouped:
|
||||
@@ -100,8 +101,8 @@ def assign_remove(request, left_list, right_list, add_method, remove_method, lef
|
||||
|
||||
elif u'%s-submit' % right_list_name in request.POST.keys():
|
||||
selected_list = ChoiceForm(request.POST,
|
||||
prefix=right_list_name,
|
||||
choices=right_list())
|
||||
prefix=right_list_name,
|
||||
choices=right_list())
|
||||
if selected_list.is_valid():
|
||||
for selection in selected_list.cleaned_data['selection']:
|
||||
if grouped:
|
||||
@@ -124,10 +125,8 @@ def assign_remove(request, left_list, right_list, add_method, remove_method, lef
|
||||
else:
|
||||
messages.error(request, _(u'Unable to add %(selection)s to %(right_list_title)s.') % {
|
||||
'selection': label, 'right_list_title': right_list_title})
|
||||
unselected_list = ChoiceForm(prefix=left_list_name,
|
||||
choices=left_list())
|
||||
selected_list = ChoiceForm(prefix=right_list_name,
|
||||
choices=right_list())
|
||||
unselected_list = ChoiceForm(prefix=left_list_name, choices=left_list())
|
||||
selected_list = ChoiceForm(prefix=right_list_name, choices=right_list())
|
||||
|
||||
context = {
|
||||
'subtemplates_list': [
|
||||
@@ -159,7 +158,7 @@ def assign_remove(request, left_list, right_list, add_method, remove_method, lef
|
||||
context.update(extra_context)
|
||||
|
||||
return render_to_response('main/generic_form.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def current_user_details(request):
|
||||
|
||||
@@ -33,15 +33,15 @@ class DetailSelectMultiple(forms.widgets.SelectMultiple):
|
||||
if value:
|
||||
if getattr(value, '__iter__', None):
|
||||
options = [(index, string) for index, string in
|
||||
self.choices if index in value]
|
||||
self.choices if index in value]
|
||||
else:
|
||||
options = [(index, string) for index, string in
|
||||
self.choices if index == value]
|
||||
self.choices if index == value]
|
||||
else:
|
||||
if self.choices:
|
||||
if self.choices[0] != (u'', u'---------') and value != []:
|
||||
options = [(index, string) for index, string in
|
||||
self.choices]
|
||||
self.choices]
|
||||
|
||||
if options:
|
||||
for index, string in options:
|
||||
|
||||
@@ -121,7 +121,3 @@ def get_available_transformations_choices():
|
||||
result.append((transformation, TRANSFORMATION_CHOICES[transformation]['label']))
|
||||
|
||||
return result
|
||||
|
||||
|
||||
def get_format_list():
|
||||
return [(format, FILE_FORMATS.get(format, u'')) for format in backend.get_format_list()]
|
||||
|
||||
@@ -1,18 +1,17 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
import subprocess
|
||||
import re
|
||||
|
||||
from . import ConverterBase
|
||||
from ..exceptions import ConvertError, UnknownFileFormat, IdentifyError
|
||||
from ..exceptions import ConvertError, IdentifyError, UnknownFileFormat
|
||||
from ..literals import (TRANSFORMATION_RESIZE,
|
||||
TRANSFORMATION_ROTATE, TRANSFORMATION_ZOOM)
|
||||
from ..literals import (DIMENSION_SEPARATOR, DEFAULT_PAGE_NUMBER,
|
||||
DEFAULT_FILE_FORMAT)
|
||||
TRANSFORMATION_ROTATE, TRANSFORMATION_ZOOM)
|
||||
from ..literals import (DEFAULT_FILE_FORMAT, DEFAULT_PAGE_NUMBER,
|
||||
DIMENSION_SEPARATOR)
|
||||
from ..settings import GM_PATH, GM_SETTINGS
|
||||
|
||||
CONVERTER_ERROR_STRING_NO_DECODER = u'No decode delegate for this image format'
|
||||
CONVERTER_ERROR_STARTS_WITH = u'starts with'
|
||||
CONVERTER_ERROR_STRING_NO_DECODER = u'No decode delegate for this image format'
|
||||
|
||||
|
||||
class GraphicsMagick(ConverterBase):
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
import subprocess
|
||||
import re
|
||||
|
||||
from . import ConverterBase
|
||||
from ..exceptions import ConvertError, UnknownFileFormat, IdentifyError
|
||||
from ..literals import (TRANSFORMATION_RESIZE, TRANSFORMATION_ROTATE,
|
||||
TRANSFORMATION_ZOOM, DIMENSION_SEPARATOR, DEFAULT_PAGE_NUMBER,
|
||||
DEFAULT_FILE_FORMAT)
|
||||
from ..exceptions import ConvertError, IdentifyError, UnknownFileFormat
|
||||
from ..literals import (DEFAULT_FILE_FORMAT, DEFAULT_PAGE_NUMBER,
|
||||
DIMENSION_SEPARATOR, TRANSFORMATION_RESIZE,
|
||||
TRANSFORMATION_ROTATE, TRANSFORMATION_ZOOM)
|
||||
from ..settings import IM_CONVERT_PATH, IM_IDENTIFY_PATH
|
||||
|
||||
CONVERTER_ERROR_STRING_NO_DECODER = u'no decode delegate for this image format'
|
||||
|
||||
@@ -17,8 +17,9 @@ from mimetype.api import get_mimetype
|
||||
|
||||
from . import ConverterBase
|
||||
from ..exceptions import UnknownFileFormat
|
||||
from ..literals import (TRANSFORMATION_RESIZE, TRANSFORMATION_ROTATE,
|
||||
TRANSFORMATION_ZOOM, DEFAULT_PAGE_NUMBER, DEFAULT_FILE_FORMAT)
|
||||
from ..literals import (DEFAULT_FILE_FORMAT, DEFAULT_PAGE_NUMBER,
|
||||
TRANSFORMATION_RESIZE, TRANSFORMATION_ROTATE,
|
||||
TRANSFORMATION_ZOOM)
|
||||
|
||||
Image.init()
|
||||
|
||||
|
||||
@@ -6,13 +6,10 @@ from navigation.api import register_links
|
||||
from project_setup.api import register_setup
|
||||
|
||||
from .api import Key
|
||||
from .links import (public_keys, key_delete, key_query, key_receive,
|
||||
key_setup)
|
||||
from .links import (key_delete, key_query, key_receive, key_setup,
|
||||
public_keys)
|
||||
|
||||
# register_links(['key_delete', 'key_private_list', 'key_public_list', 'key_query'], [private_keys, public_keys, key_query], menu_name='sidebar')
|
||||
register_links(['django_gpg:key_delete', 'django_gpg:key_public_list', 'django_gpg:key_query'], [public_keys, key_query], menu_name='sidebar')
|
||||
|
||||
register_links(Key, [key_delete])
|
||||
register_links(KeyServerKey, [key_receive])
|
||||
|
||||
register_setup(key_setup)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .permissions import (PERMISSION_KEY_VIEW, PERMISSION_KEY_DELETE,
|
||||
PERMISSION_KEYSERVER_QUERY, PERMISSION_KEY_RECEIVE)
|
||||
from .permissions import (PERMISSION_KEY_DELETE, PERMISSION_KEY_RECEIVE,
|
||||
PERMISSION_KEY_VIEW, PERMISSION_KEYSERVER_QUERY)
|
||||
|
||||
private_keys = {'text': _(u'Private keys'), 'view': 'django_gpg:key_private_list', 'args': 'object.pk', 'famfam': 'key', 'icon': 'key.png', 'permissions': [PERMISSION_KEY_VIEW]}
|
||||
public_keys = {'text': _(u'Public keys'), 'view': 'django_gpg:key_public_list', 'args': 'object.pk', 'famfam': 'key', 'icon': 'key.png', 'permissions': [PERMISSION_KEY_VIEW]}
|
||||
|
||||
@@ -14,8 +14,8 @@ from permissions.models import Permission
|
||||
from .api import Key
|
||||
from .exceptions import KeyImportError
|
||||
from .forms import KeySearchForm
|
||||
from .permissions import (PERMISSION_KEY_VIEW, PERMISSION_KEY_DELETE,
|
||||
PERMISSION_KEYSERVER_QUERY, PERMISSION_KEY_RECEIVE)
|
||||
from .permissions import (PERMISSION_KEY_DELETE, PERMISSION_KEY_RECEIVE,
|
||||
PERMISSION_KEY_VIEW, PERMISSION_KEYSERVER_QUERY)
|
||||
from .runtime import gpg
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib.comments.models import Comment
|
||||
from django.contrib.contenttypes import generic
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
@@ -10,14 +9,23 @@ from common.utils import encapsulate
|
||||
from documents.models import Document
|
||||
from navigation.api import register_links, register_model_list_columns
|
||||
|
||||
from .links import (comment_delete, comment_add,
|
||||
comments_for_document)
|
||||
from .links import comment_add, comment_delete, comments_for_document
|
||||
from .permissions import (PERMISSION_COMMENT_CREATE,
|
||||
PERMISSION_COMMENT_DELETE, PERMISSION_COMMENT_VIEW)
|
||||
PERMISSION_COMMENT_DELETE, PERMISSION_COMMENT_VIEW)
|
||||
|
||||
if 'django.contrib.comments' not in settings.INSTALLED_APPS:
|
||||
raise Exception('This app depends on the django.contrib.comments app.')
|
||||
|
||||
Document.add_to_class(
|
||||
'comments',
|
||||
generic.GenericRelation(
|
||||
Comment,
|
||||
content_type_field='content_type',
|
||||
object_id_field='object_pk'
|
||||
)
|
||||
)
|
||||
|
||||
class_permissions(Document, [PERMISSION_COMMENT_CREATE,
|
||||
PERMISSION_COMMENT_DELETE,
|
||||
PERMISSION_COMMENT_VIEW])
|
||||
|
||||
register_model_list_columns(Comment, [
|
||||
{
|
||||
@@ -37,18 +45,3 @@ register_model_list_columns(Comment, [
|
||||
register_links(['comments:comments_for_document', 'comments:comment_add', 'comments:comment_delete', 'comments:comment_multiple_delete'], [comment_add], menu_name='sidebar')
|
||||
register_links(Comment, [comment_delete])
|
||||
register_links(Document, [comments_for_document], menu_name='form_header')
|
||||
|
||||
Document.add_to_class(
|
||||
'comments',
|
||||
generic.GenericRelation(
|
||||
Comment,
|
||||
content_type_field='content_type',
|
||||
object_id_field='object_pk'
|
||||
)
|
||||
)
|
||||
|
||||
class_permissions(Document, [
|
||||
PERMISSION_COMMENT_CREATE,
|
||||
PERMISSION_COMMENT_DELETE,
|
||||
PERMISSION_COMMENT_VIEW
|
||||
])
|
||||
|
||||
@@ -3,7 +3,7 @@ from __future__ import absolute_import
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .permissions import (PERMISSION_COMMENT_CREATE,
|
||||
PERMISSION_COMMENT_DELETE, PERMISSION_COMMENT_VIEW)
|
||||
PERMISSION_COMMENT_DELETE, PERMISSION_COMMENT_VIEW)
|
||||
|
||||
comment_delete = {'text': _('delete'), 'view': 'comments:comment_delete', 'args': 'object.pk', 'famfam': 'comment_delete', 'permissions': [PERMISSION_COMMENT_DELETE]}
|
||||
comment_multiple_delete = {'text': _('delete'), 'view': 'comments:comment_multiple_delete', 'args': 'object.pk', 'famfam': 'comments_delete', 'permissions': [PERMISSION_COMMENT_DELETE]}
|
||||
|
||||
@@ -64,7 +64,7 @@ def comment_delete(request, comment_id=None, comment_id_list=None):
|
||||
context['title'] = _(u'Are you sure you wish to delete the comments: %s?') % ', '.join([unicode(d) for d in comments])
|
||||
|
||||
return render_to_response('main/generic_confirm.html', context,
|
||||
context_instance=RequestContext(request))
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def comment_multiple_delete(request):
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# encoding: utf-8
|
||||
import datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
from django.db import models
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
from django.db import models
|
||||
@@ -11,12 +10,10 @@ class Migration(SchemaMigration):
|
||||
# Adding index on 'DocumentVersion', fields ['timestamp']
|
||||
db.create_index(u'documents_documentversion', ['timestamp'])
|
||||
|
||||
|
||||
def backwards(self, orm):
|
||||
# Removing index on 'DocumentVersion', fields ['timestamp']
|
||||
db.delete_index(u'documents_documentversion', ['timestamp'])
|
||||
|
||||
|
||||
models = {
|
||||
u'auth.group': {
|
||||
'Meta': {'object_name': 'Group'},
|
||||
|
||||
@@ -11,12 +11,14 @@ from project_setup.api import register_setup
|
||||
from rest_api.classes import APIEndPoint
|
||||
|
||||
from .api import get_metadata_string
|
||||
from .links import (metadata_edit, metadata_view, metadata_multiple_edit,
|
||||
metadata_add, metadata_multiple_add, metadata_remove, metadata_multiple_remove,
|
||||
setup_metadata_type_list, setup_metadata_type_edit, setup_metadata_type_delete,
|
||||
setup_metadata_type_create, setup_metadata_set_list, setup_metadata_set_edit,
|
||||
setup_metadata_set_members, setup_metadata_set_delete, setup_metadata_set_create,
|
||||
setup_document_type_metadata)
|
||||
from .links import (metadata_add, metadata_edit, metadata_multiple_add,
|
||||
metadata_multiple_edit, metadata_multiple_remove,
|
||||
metadata_remove, metadata_view,
|
||||
setup_document_type_metadata, setup_metadata_set_create,
|
||||
setup_metadata_set_delete, setup_metadata_set_edit,
|
||||
setup_metadata_set_list, setup_metadata_set_members,
|
||||
setup_metadata_type_create, setup_metadata_type_delete,
|
||||
setup_metadata_type_edit, setup_metadata_type_list)
|
||||
from .models import MetadataSet, MetadataType
|
||||
from .permissions import (PERMISSION_METADATA_DOCUMENT_ADD,
|
||||
PERMISSION_METADATA_DOCUMENT_EDIT,
|
||||
@@ -42,10 +44,10 @@ class_permissions(Document, [
|
||||
])
|
||||
|
||||
register_model_list_columns(Document, [
|
||||
{
|
||||
'name': _(u'Metadata'), 'attribute': encapsulate(lambda x: get_metadata_string(x))
|
||||
},
|
||||
])
|
||||
{
|
||||
'name': _(u'Metadata'), 'attribute': encapsulate(lambda x: get_metadata_string(x))
|
||||
},
|
||||
])
|
||||
|
||||
endpoint = APIEndPoint('metadata')
|
||||
endpoint.register_urls(api_urls)
|
||||
|
||||
@@ -5,8 +5,8 @@ from django.shortcuts import get_object_or_404
|
||||
|
||||
from rest_framework import generics
|
||||
|
||||
from acls.models import AccessEntry
|
||||
from documents.models import Document
|
||||
from documents.permissions import PERMISSION_DOCUMENT_VIEW
|
||||
from permissions.models import Permission
|
||||
from rest_api.filters import MayanObjectPermissionsFilter
|
||||
from rest_api.permissions import MayanPermission
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
from django import forms
|
||||
from django.forms.formsets import formset_factory, BaseFormSet
|
||||
from django.forms.formsets import formset_factory
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from common.widgets import ScrollableCheckboxSelectMultiple
|
||||
@@ -13,7 +13,7 @@ from .settings import AVAILABLE_FUNCTIONS, AVAILABLE_MODELS, AVAILABLE_VALIDATOR
|
||||
class MetadataForm(forms.Form):
|
||||
|
||||
def clean_value(self):
|
||||
value = self.cleaned_data['value']
|
||||
value = self.cleaned_data['value']
|
||||
metadata_id = self.cleaned_data['id']
|
||||
metadata_type = MetadataType.objects.get(pk=metadata_id)
|
||||
if ( metadata_type.lookup
|
||||
@@ -22,7 +22,7 @@ class MetadataForm(forms.Form):
|
||||
new_value = val_func(value)
|
||||
if new_value:
|
||||
value = new_value
|
||||
return value
|
||||
return value
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(MetadataForm, self).__init__(*args, **kwargs)
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
"""Configuration options for the metadata app"""
|
||||
|
||||
import datetime
|
||||
|
||||
from django.contrib.auth.models import User
|
||||
from django.utils.timezone import now
|
||||
|
||||
@@ -26,6 +24,6 @@ register_settings(
|
||||
# Definition
|
||||
{'name': u'AVAILABLE_FUNCTIONS', 'global_name': u'METADATA_AVAILABLE_FUNCTIONS', 'default': default_available_functions},
|
||||
{'name': u'AVAILABLE_MODELS', 'global_name': u'METADATA_AVAILABLE_MODELS', 'default': default_available_models},
|
||||
{'name': u'AVAILABLE_VALIDATORS', 'global_name': u'METADATA_AVAILABLE_VALIDATORS', 'default': default_available_validators},
|
||||
{'name': u'AVAILABLE_VALIDATORS', 'global_name': u'METADATA_AVAILABLE_VALIDATORS', 'default': default_available_validators},
|
||||
]
|
||||
)
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
import os
|
||||
import django
|
||||
|
||||
from celery import Celery
|
||||
from django.conf import settings
|
||||
|
||||
@@ -38,6 +38,7 @@ urlpatterns = patterns('',
|
||||
url(r'^user_management/', include('user_management.urls', namespace='user_management')),
|
||||
)
|
||||
|
||||
|
||||
def handler500(request):
|
||||
"""
|
||||
500 error handler which includes ``request`` in the context.
|
||||
|
||||
Reference in New Issue
Block a user