make user_capabilities validation front-loaded, try to run tests

This commit is contained in:
AlanCoding
2016-09-16 13:36:00 -04:00
parent 4c7e6835ad
commit 57abd438c8
6 changed files with 49 additions and 14 deletions

View File

@@ -209,6 +209,8 @@ class ProjectUpdatePermission(ModelAccessPermission):
class UserPermission(ModelAccessPermission):
def check_post_permissions(self, request, view, obj=None):
if request.user.is_superuser:
if not request.data:
return request.user.admin_of_organizations.exists()
elif request.user.is_superuser:
return True
raise PermissionDenied()

View File

@@ -337,7 +337,7 @@ class BaseSerializer(serializers.ModelSerializer):
if hasattr(self, 'show_capabilities'):
view = self.context.get('view', None)
parent_obj = None
if hasattr(view, 'parent_model'):
if view and hasattr(view, 'parent_model'):
parent_obj = view.get_parent_object()
if view and view.request and view.request.user:
user_capabilities = get_user_capabilities(