Update generic view and check access interfaces

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
Roberto Rosario
2019-01-30 03:54:10 -04:00
parent b4a81ee0bc
commit 4ba2d375af
26 changed files with 128 additions and 150 deletions

View File

@@ -44,9 +44,9 @@ class LinkingApp(MayanAppConfig):
app_label='documents', model_name='Document'
)
ResolvedSmartLink = self.get_model('ResolvedSmartLink')
SmartLink = self.get_model('SmartLink')
SmartLinkCondition = self.get_model('SmartLinkCondition')
ResolvedSmartLink = self.get_model(model_name='ResolvedSmartLink')
SmartLink = self.get_model(model_name='SmartLink')
SmartLinkCondition = self.get_model(model_name='SmartLinkCondition')
ModelPermission.register(
model=SmartLink, permissions=(

View File

@@ -40,12 +40,12 @@ class ResolvedSmartLinkView(DocumentListView):
)
AccessControlList.objects.check_access(
obj=self.document, permissions=permission_document_view,
obj=self.document, permission=permission_document_view,
user=request.user
)
AccessControlList.objects.check_access(
obj=self.smart_link, permissions=permission_smart_link_view,
obj=self.smart_link, permission=permission_smart_link_view,
user=request.user
)
@@ -63,7 +63,7 @@ class ResolvedSmartLinkView(DocumentListView):
try:
AccessControlList.objects.check_access(
obj=self.smart_link, permissions=permission_smart_link_edit,
obj=self.smart_link, permission=permission_smart_link_edit,
user=self.request.user
)
except PermissionDenied:
@@ -163,12 +163,12 @@ class SmartLinkListView(SingleObjectListView):
'title': _('Smart links'),
}
def get_object_list(self):
return self.get_smart_link_queryset()
def get_smart_link_queryset(self):
return SmartLink.objects.all()
def get_source_queryset(self):
return self.get_smart_link_queryset()
class DocumentSmartLinkListView(SmartLinkListView):
def dispatch(self, request, *args, **kwargs):
@@ -177,7 +177,7 @@ class DocumentSmartLinkListView(SmartLinkListView):
)
AccessControlList.objects.check_access(
obj=self.document, permissions=permission_document_view,
obj=self.document, permission=permission_document_view,
user=request.user
)
@@ -268,21 +268,21 @@ class SmartLinkConditionListView(SingleObjectListView):
) % self.get_smart_link(),
}
def get_object_list(self):
return self.get_smart_link().conditions.all()
def get_smart_link(self):
return get_object_or_404(
klass=SmartLink, pk=self.kwargs['smart_link_id']
)
def get_source_queryset(self):
return self.get_smart_link().conditions.all()
class SmartLinkConditionCreateView(SingleObjectCreateView):
form_class = SmartLinkConditionForm
def dispatch(self, request, *args, **kwargs):
AccessControlList.objects.check_access(
obj=self.get_smart_link(), permissions=permission_smart_link_edit,
obj=self.get_smart_link(), permission=permission_smart_link_edit,
user=request.user
)
@@ -323,7 +323,7 @@ class SmartLinkConditionEditView(SingleObjectEditView):
def dispatch(self, request, *args, **kwargs):
AccessControlList.objects.check_access(
obj=self.get_object().smart_link,
permissions=permission_smart_link_edit, user=request.user
permission=permission_smart_link_edit, user=request.user
)
return super(
@@ -351,7 +351,7 @@ class SmartLinkConditionDeleteView(SingleObjectDeleteView):
def dispatch(self, request, *args, **kwargs):
AccessControlList.objects.check_access(
obj=self.get_object().smart_link,
permissions=permission_smart_link_edit, user=request.user
permission=permission_smart_link_edit, user=request.user
)
return super(