From 6d2eed5148b4428a6c512367e456fa5422ebf4ab Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Mon, 24 Aug 2015 02:25:09 -0400 Subject: [PATCH] Add DocumentFolder proxy class to re add the remove from folder functionality. --- mayan/apps/folders/api_views.py | 2 +- mayan/apps/folders/apps.py | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/mayan/apps/folders/api_views.py b/mayan/apps/folders/api_views.py index f793a9ed7c..52195bebe7 100644 --- a/mayan/apps/folders/api_views.py +++ b/mayan/apps/folders/api_views.py @@ -46,7 +46,7 @@ class APIDocumentFolderListView(generics.ListAPIView): permission_document_view, self.request.user, document ) - queryset = document.folders.all() + queryset = document.folders().all() return queryset diff --git a/mayan/apps/folders/apps.py b/mayan/apps/folders/apps.py index b21f32b534..70e6b9fca1 100644 --- a/mayan/apps/folders/apps.py +++ b/mayan/apps/folders/apps.py @@ -20,7 +20,7 @@ from .links import ( link_folder_delete, link_folder_document_multiple_remove, link_folder_edit, link_folder_view ) -from .models import Folder +from .models import DocumentFolder, Folder from .permissions import ( permission_folder_add_document, permission_folder_delete, permission_folder_edit, permission_folder_remove_document, @@ -37,6 +37,8 @@ class FoldersApp(MayanAppConfig): APIEndPoint(app=self, version_string='1') + Document.add_to_class('folders', lambda document: DocumentFolder.objects.filter(documents=document)) + ModelPermission.register( model=Document, permissions=( permission_folder_add_document, @@ -72,7 +74,12 @@ class FoldersApp(MayanAppConfig): ) menu_multi_item.bind_links( links=(link_folder_document_multiple_remove,), - sources=(CombinedSource(obj=Document, view='folders:folder_view'),) + sources=('folders:folder_view',) + ) + menu_object.bind_links( + links=( + link_folder_view, + ), sources=(DocumentFolder, ) ) menu_object.bind_links( links=(