Merge documents and document_acls apps
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import apps
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls.api import class_permissions
|
||||
from acls.permissions import ACLS_VIEW_ACL, ACLS_EDIT_ACL
|
||||
from common import menu_facet
|
||||
from documents.models import Document
|
||||
|
||||
from .links import link_acl_list
|
||||
|
||||
|
||||
class DocumentACLsApp(apps.AppConfig):
|
||||
name = 'document_acls'
|
||||
verbose_name = _('Document ACLs')
|
||||
|
||||
def ready(self):
|
||||
class_permissions(Document, [
|
||||
ACLS_VIEW_ACL,
|
||||
ACLS_EDIT_ACL
|
||||
])
|
||||
|
||||
menu_facet.bind_links(links=[link_acl_list], sources=[Document])
|
||||
@@ -1,8 +0,0 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls.permissions import ACLS_VIEW_ACL
|
||||
from navigation import Link
|
||||
|
||||
link_acl_list = Link(permissions=[ACLS_VIEW_ACL], text=_('ACLs'), view='document_acls:document_acl_list', args='object.pk')
|
||||
@@ -1,7 +0,0 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf.urls import patterns, url
|
||||
|
||||
urlpatterns = patterns('document_acls.views',
|
||||
url(r'^list_for/document/(?P<document_id>\d+)/$', 'document_acl_list', (), 'document_acl_list'),
|
||||
)
|
||||
@@ -1,17 +0,0 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.shortcuts import get_object_or_404
|
||||
|
||||
from acls.views import acl_list_for
|
||||
from documents.models import Document
|
||||
|
||||
|
||||
def document_acl_list(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
return acl_list_for(
|
||||
request,
|
||||
document,
|
||||
extra_context={
|
||||
'object': document,
|
||||
}
|
||||
)
|
||||
@@ -8,6 +8,7 @@ from django.utils.translation import ugettext_lazy as _
|
||||
from actstream import registry
|
||||
|
||||
from acls.api import class_permissions
|
||||
from acls.permissions import ACLS_VIEW_ACL, ACLS_EDIT_ACL
|
||||
from common import (
|
||||
MissingItem, menu_facet, menu_front_page, menu_object, menu_secondary,
|
||||
menu_setup, menu_sidebar, menu_multi_item
|
||||
@@ -23,12 +24,12 @@ from statistics.classes import StatisticNamespace
|
||||
|
||||
from documents import settings as document_settings
|
||||
from .links import (
|
||||
link_clear_image_cache, link_document_clear_transformations,
|
||||
link_document_content, link_document_delete,
|
||||
link_document_document_type_edit, link_document_events_view,
|
||||
link_document_multiple_document_type_edit, link_document_download,
|
||||
link_document_edit, link_document_list, link_document_list_recent,
|
||||
link_document_multiple_delete,
|
||||
link_clear_image_cache, link_document_acl_list,
|
||||
link_document_clear_transformations, link_document_content,
|
||||
link_document_delete, link_document_document_type_edit,
|
||||
link_document_events_view, link_document_multiple_document_type_edit,
|
||||
link_document_download, link_document_edit, link_document_list,
|
||||
link_document_list_recent, link_document_multiple_delete,
|
||||
link_document_multiple_clear_transformations,
|
||||
link_document_multiple_download,
|
||||
link_document_multiple_update_page_count, link_document_page_edit,
|
||||
@@ -82,11 +83,15 @@ class DocumentsApp(apps.AppConfig):
|
||||
ModelAttribute(Document, label=_('Label'), name='label', type_name='field')
|
||||
|
||||
class_permissions(Document, [
|
||||
PERMISSION_DOCUMENT_DELETE, PERMISSION_DOCUMENT_DOWNLOAD,
|
||||
PERMISSION_DOCUMENT_EDIT, PERMISSION_DOCUMENT_NEW_VERSION,
|
||||
PERMISSION_DOCUMENT_PROPERTIES_EDIT, PERMISSION_DOCUMENT_TRANSFORM,
|
||||
PERMISSION_DOCUMENT_VERSION_REVERT, PERMISSION_DOCUMENT_VIEW,
|
||||
PERMISSION_EVENTS_VIEW
|
||||
])
|
||||
|
||||
class_permissions(Document, [
|
||||
ACLS_VIEW_ACL, ACLS_EDIT_ACL, PERMISSION_DOCUMENT_DELETE,
|
||||
PERMISSION_DOCUMENT_DOWNLOAD, PERMISSION_DOCUMENT_EDIT,
|
||||
PERMISSION_DOCUMENT_NEW_VERSION,
|
||||
PERMISSION_DOCUMENT_PROPERTIES_EDIT,
|
||||
PERMISSION_DOCUMENT_TRANSFORM, PERMISSION_DOCUMENT_VERSION_REVERT,
|
||||
PERMISSION_DOCUMENT_VIEW, PERMISSION_EVENTS_VIEW
|
||||
])
|
||||
|
||||
document_search = SearchModel('documents', 'Document', permission=PERMISSION_DOCUMENT_VIEW, serializer_string='documents.serializers.DocumentSerializer')
|
||||
@@ -105,16 +110,17 @@ class DocumentsApp(apps.AppConfig):
|
||||
menu_front_page.bind_links(links=[link_document_list_recent, link_document_list])
|
||||
menu_setup.bind_links(links=[link_document_type_setup])
|
||||
|
||||
# Document
|
||||
menu_object.bind_links(links=[link_document_edit, link_document_document_type_edit, link_document_print, link_document_delete, link_document_download, link_document_clear_transformations, link_document_update_page_count], sources=[Document])
|
||||
|
||||
# Document type links
|
||||
menu_object.bind_links(links=[link_document_type_edit, link_document_type_filename_list, link_document_type_delete], sources=[DocumentType])
|
||||
menu_object.bind_links(links=[link_document_type_filename_edit, link_document_type_filename_delete], sources=[DocumentTypeFilename])
|
||||
menu_secondary.bind_links(links=[link_document_type_list, link_document_type_create], sources=[DocumentType, 'documents:document_type_create', 'documents:document_type_list'])
|
||||
menu_sidebar.bind_links(links=[link_document_type_filename_create], sources=[DocumentTypeFilename, 'documents:document_type_filename_list', 'documents:document_type_filename_create'])
|
||||
|
||||
# Register document facet links
|
||||
# Document object links
|
||||
menu_object.bind_links(links=[link_document_edit, link_document_document_type_edit, link_document_print, link_document_delete, link_document_download, link_document_clear_transformations, link_document_update_page_count], sources=[Document])
|
||||
|
||||
# Document facet links
|
||||
menu_facet.bind_links(links=[link_document_acl_list], sources=[Document])
|
||||
menu_facet.bind_links(links=[link_document_preview], sources=[Document], position=0)
|
||||
menu_facet.bind_links(links=[link_document_content], sources=[Document], position=1)
|
||||
menu_facet.bind_links(links=[link_document_properties], sources=[Document], position=2)
|
||||
|
||||
@@ -2,6 +2,7 @@ from __future__ import absolute_import, unicode_literals
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from acls.permissions import ACLS_VIEW_ACL
|
||||
from events.permissions import PERMISSION_EVENTS_VIEW
|
||||
from navigation import Link
|
||||
|
||||
@@ -37,6 +38,7 @@ def is_min_zoom(context):
|
||||
|
||||
|
||||
# Facet
|
||||
link_document_acl_list = Link(permissions=[ACLS_VIEW_ACL], text=_('ACLs'), view='documents:document_acl_list', args='object.pk')
|
||||
link_document_content = Link(permissions=[PERMISSION_DOCUMENT_VIEW], text=_('Content'), view='documents:document_content', args='object.id')
|
||||
link_document_events_view = Link(permissions=[PERMISSION_EVENTS_VIEW], text=_('Events'), view='events:events_for_object', args=['"documents"', '"document"', 'object.id'])
|
||||
link_document_preview = Link(permissions=[PERMISSION_DOCUMENT_VIEW], text=_('Preview'), view='documents:document_preview', args='object.id')
|
||||
|
||||
@@ -28,6 +28,8 @@ urlpatterns = patterns('documents.views',
|
||||
url(r'^(?P<document_id>\d+)/reset_page_count/$', 'document_update_page_count', (), 'document_update_page_count'),
|
||||
url(r'^multiple/reset_page_count/$', 'document_multiple_update_page_count', (), 'document_multiple_update_page_count'),
|
||||
|
||||
url(r'^(?P<document_id>\d+)/acls/$', 'document_acl_list', (), 'document_acl_list'),
|
||||
|
||||
url(r'^(?P<document_id>\d+)/display/$', 'get_document_image', {'size': DISPLAY_SIZE}, 'document_display'),
|
||||
url(r'^(?P<document_id>\d+)/display/print/$', 'get_document_image', {'size': PRINT_SIZE}, 'document_display_print'),
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ from django.utils.translation import ugettext_lazy as _, ungettext
|
||||
import sendfile
|
||||
|
||||
from acls.models import AccessEntry
|
||||
from acls.views import acl_list_for
|
||||
from common.compressed_files import CompressedFile
|
||||
from common.utils import encapsulate, pretty_size, parse_range, urlquote
|
||||
from common.views import SingleObjectListView
|
||||
@@ -1238,3 +1239,14 @@ def document_page_transformation_delete(request, document_page_transformation_id
|
||||
'document_page': document_page_transformation.document_page},
|
||||
'transformation': document_page_transformation,
|
||||
}, context_instance=RequestContext(request))
|
||||
|
||||
|
||||
def document_acl_list(request, document_id):
|
||||
document = get_object_or_404(Document, pk=document_id)
|
||||
return acl_list_for(
|
||||
request,
|
||||
document,
|
||||
extra_context={
|
||||
'object': document,
|
||||
}
|
||||
)
|
||||
|
||||
@@ -77,7 +77,6 @@ INSTALLED_APPS = (
|
||||
'user_management.apps.UserManagementApp',
|
||||
# Mayan EDMS
|
||||
'checkouts.apps.CheckoutsApp',
|
||||
'document_acls.apps.DocumentACLsApp',
|
||||
'document_comments.apps.DocumentCommentsApp',
|
||||
'document_indexing.apps.DocumentIndexingApp',
|
||||
'document_signatures.apps.DocumentSignaturesApp',
|
||||
|
||||
@@ -15,7 +15,6 @@ urlpatterns = patterns('',
|
||||
url(r'^authentication/', include('authentication.urls', namespace='authentication')),
|
||||
url(r'^checkouts/', include('checkouts.urls', namespace='checkouts')),
|
||||
url(r'^comments/', include('document_comments.urls', namespace='comments')),
|
||||
url(r'^document/acls/', include('document_acls.urls', namespace='document_acls')),
|
||||
url(r'^document/signatures/', include('document_signatures.urls', namespace='signatures')),
|
||||
url(r'^document/states/', include('document_states.urls', namespace='document_states')),
|
||||
url(r'^documents/', include('documents.urls', namespace='documents')),
|
||||
|
||||
Reference in New Issue
Block a user