Split Permission and StoredPermission class and model into different modules. Simplified the Permission class.
This commit is contained in:
@@ -15,7 +15,7 @@ from converter.exceptions import UnkownConvertError, UnknownFileFormat
|
||||
from converter.literals import (
|
||||
DEFAULT_PAGE_NUMBER, DEFAULT_ROTATION, DEFAULT_ZOOM_LEVEL
|
||||
)
|
||||
from permissions.models import Permission
|
||||
from permissions import Permission
|
||||
from rest_api.filters import MayanObjectPermissionsFilter
|
||||
from rest_api.permissions import MayanPermission
|
||||
|
||||
@@ -184,7 +184,7 @@ class APIDocumentImageView(generics.GenericAPIView):
|
||||
document = get_object_or_404(Document, pk=pk)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document)
|
||||
|
||||
@@ -315,7 +315,7 @@ class APIDocumentTypeDocumentListView(generics.ListAPIView):
|
||||
def get_queryset(self):
|
||||
document_type = get_object_or_404(DocumentType, pk=self.kwargs['pk'])
|
||||
try:
|
||||
Permission.objects.check_permissions(self.request.user, [permission_document_type_view])
|
||||
Permission.check_permissions(self.request.user, [permission_document_type_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_type_view, self.request.user, document_type)
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from permissions.models import PermissionNamespace
|
||||
from permissions import PermissionNamespace
|
||||
|
||||
namespace = PermissionNamespace('documents', _('Documents'))
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ from converter.literals import (
|
||||
from converter.models import Transformation
|
||||
from converter.permissions import permission_transformation_delete
|
||||
from filetransfers.api import serve_file
|
||||
from permissions.models import Permission
|
||||
from permissions import Permission
|
||||
|
||||
from .events import (
|
||||
event_document_properties_edit, event_document_type_change
|
||||
@@ -105,7 +105,7 @@ def document_list(request, object_list=None, title=None, extra_context=None):
|
||||
pre_object_list = object_list if not (object_list is None) else Document.objects.all()
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
# If user doesn't have global permission, get a list of document
|
||||
# for which he/she does hace access use it to filter the
|
||||
@@ -131,7 +131,7 @@ def document_properties(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document)
|
||||
|
||||
@@ -168,7 +168,7 @@ def document_preview(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document)
|
||||
|
||||
@@ -199,7 +199,7 @@ def document_delete(request, document_id=None, document_id_list=None):
|
||||
return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_delete])
|
||||
Permission.check_permissions(request.user, [permission_document_delete])
|
||||
except PermissionDenied:
|
||||
documents = AccessEntry.objects.filter_objects_by_access(permission_document_delete, request.user, documents, exception_on_empty=True)
|
||||
|
||||
@@ -245,7 +245,7 @@ def document_multiple_delete(request):
|
||||
def document_edit(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_properties_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_properties_edit])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_properties_edit, request.user, document)
|
||||
|
||||
@@ -290,7 +290,7 @@ def document_document_type_edit(request, document_id=None, document_id_list=None
|
||||
return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_properties_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_properties_edit])
|
||||
except PermissionDenied:
|
||||
documents = AccessEntry.objects.filter_objects_by_access(permission_document_properties_edit, request.user, documents, exception_on_empty=True)
|
||||
|
||||
@@ -340,7 +340,7 @@ def document_multiple_document_type_edit(request):
|
||||
def get_document_image(request, document_id, size=setting_preview_size.value):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document)
|
||||
|
||||
@@ -376,7 +376,7 @@ def document_download(request, document_id=None, document_id_list=None, document
|
||||
document_versions = [get_object_or_404(DocumentVersion, pk=document_version_pk)]
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_download])
|
||||
Permission.check_permissions(request.user, [permission_document_download])
|
||||
except PermissionDenied:
|
||||
document_versions = AccessEntry.objects.filter_objects_by_access(permission_document_download, request.user, document_versions, related='document', exception_on_empty=True)
|
||||
|
||||
@@ -484,7 +484,7 @@ def document_update_page_count(request, document_id=None, document_id_list=None)
|
||||
return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_tools])
|
||||
Permission.check_permissions(request.user, [permission_document_tools])
|
||||
except PermissionDenied:
|
||||
documents = AccessEntry.objects.filter_objects_by_access(permission_document_tools, request.user, documents, exception_on_empty=True)
|
||||
|
||||
@@ -536,7 +536,7 @@ def document_clear_transformations(request, document_id=None, document_id_list=N
|
||||
return HttpResponseRedirect(request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL)))
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_transformation_delete])
|
||||
Permission.check_permissions(request.user, [permission_transformation_delete])
|
||||
except PermissionDenied:
|
||||
documents = AccessEntry.objects.filter_objects_by_access(permission_transformation_delete, request.user, documents, exception_on_empty=True)
|
||||
|
||||
@@ -582,7 +582,7 @@ def document_page_view(request, document_page_id):
|
||||
document_page = get_object_or_404(DocumentPage, pk=document_page_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -617,7 +617,7 @@ def document_page_navigation_next(request, document_page_id):
|
||||
document_page = get_object_or_404(DocumentPage, pk=document_page_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -635,7 +635,7 @@ def document_page_navigation_previous(request, document_page_id):
|
||||
document_page = get_object_or_404(DocumentPage, pk=document_page_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -654,7 +654,7 @@ def document_page_navigation_first(request, document_page_id):
|
||||
document_page = get_object_or_404(document_page.siblings, page_number=1)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -668,7 +668,7 @@ def document_page_navigation_last(request, document_page_id):
|
||||
document_page = get_object_or_404(document_page.siblings, page_number=document_page.siblings.count())
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -681,7 +681,7 @@ def transform_page(request, document_page_id, zoom_function=None, rotation_funct
|
||||
document_page = get_object_or_404(DocumentPage, pk=document_page_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document_page.document)
|
||||
|
||||
@@ -744,7 +744,7 @@ def document_print(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_print])
|
||||
Permission.check_permissions(request.user, [permission_document_print])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_print, request.user, document)
|
||||
|
||||
@@ -784,7 +784,7 @@ def document_print(request, document_id):
|
||||
|
||||
|
||||
def document_type_list(request):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_view])
|
||||
Permission.check_permissions(request.user, [permission_document_type_view])
|
||||
|
||||
context = {
|
||||
'object_list': DocumentType.objects.all(),
|
||||
@@ -800,7 +800,7 @@ def document_type_list(request):
|
||||
|
||||
|
||||
def document_type_edit(request, document_type_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_type_edit])
|
||||
document_type = get_object_or_404(DocumentType, pk=document_type_id)
|
||||
|
||||
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', reverse('documents:document_type_list'))))
|
||||
@@ -827,7 +827,7 @@ def document_type_edit(request, document_type_id):
|
||||
|
||||
|
||||
def document_type_delete(request, document_type_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_delete])
|
||||
Permission.check_permissions(request.user, [permission_document_type_delete])
|
||||
document_type = get_object_or_404(DocumentType, pk=document_type_id)
|
||||
|
||||
post_action_redirect = reverse('documents:document_type_list')
|
||||
@@ -860,7 +860,7 @@ def document_type_delete(request, document_type_id):
|
||||
|
||||
|
||||
def document_type_create(request):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_create])
|
||||
Permission.check_permissions(request.user, [permission_document_type_create])
|
||||
|
||||
if request.method == 'POST':
|
||||
form = DocumentTypeForm(request.POST)
|
||||
@@ -882,7 +882,7 @@ def document_type_create(request):
|
||||
|
||||
|
||||
def document_type_filename_list(request, document_type_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_view])
|
||||
Permission.check_permissions(request.user, [permission_document_type_view])
|
||||
document_type = get_object_or_404(DocumentType, pk=document_type_id)
|
||||
|
||||
context = {
|
||||
@@ -904,7 +904,7 @@ def document_type_filename_list(request, document_type_id):
|
||||
|
||||
|
||||
def document_type_filename_edit(request, document_type_filename_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_type_edit])
|
||||
document_type_filename = get_object_or_404(DocumentTypeFilename, pk=document_type_filename_id)
|
||||
|
||||
next = request.POST.get('next', request.GET.get('next', request.META.get('HTTP_REFERER', reverse('documents:document_type_filename_list', args=[document_type_filename.document_type_id]))))
|
||||
@@ -936,7 +936,7 @@ def document_type_filename_edit(request, document_type_filename_id):
|
||||
|
||||
|
||||
def document_type_filename_delete(request, document_type_filename_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_type_edit])
|
||||
document_type_filename = get_object_or_404(DocumentTypeFilename, pk=document_type_filename_id)
|
||||
|
||||
post_action_redirect = reverse('documents:document_type_filename_list', args=[document_type_filename.document_type_id])
|
||||
@@ -971,7 +971,7 @@ def document_type_filename_delete(request, document_type_filename_id):
|
||||
|
||||
|
||||
def document_type_filename_create(request, document_type_id):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_type_edit])
|
||||
Permission.check_permissions(request.user, [permission_document_type_edit])
|
||||
|
||||
document_type = get_object_or_404(DocumentType, pk=document_type_id)
|
||||
|
||||
@@ -1002,7 +1002,7 @@ def document_type_filename_create(request, document_type_id):
|
||||
|
||||
|
||||
def document_clear_image_cache(request):
|
||||
Permission.objects.check_permissions(request.user, [permission_document_tools])
|
||||
Permission.check_permissions(request.user, [permission_document_tools])
|
||||
|
||||
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', reverse(settings.LOGIN_REDIRECT_URL))))
|
||||
|
||||
@@ -1022,7 +1022,7 @@ def document_version_list(request, document_pk):
|
||||
document = get_object_or_404(Document, pk=document_pk)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_view])
|
||||
Permission.check_permissions(request.user, [permission_document_view])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_view, request.user, document)
|
||||
|
||||
@@ -1062,7 +1062,7 @@ def document_version_revert(request, document_version_pk):
|
||||
document_version = get_object_or_404(DocumentVersion, pk=document_version_pk)
|
||||
|
||||
try:
|
||||
Permission.objects.check_permissions(request.user, [permission_document_version_revert])
|
||||
Permission.check_permissions(request.user, [permission_document_version_revert])
|
||||
except PermissionDenied:
|
||||
AccessEntry.objects.check_access(permission_document_version_revert, request.user, document_version.document)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user