コード例 #1
0
ファイル: flags.py プロジェクト: bigbeer/Comment
 def dispatch(self, request, *args, **kwargs):
     self.comment = get_object_or_404(Comment, pk=self.kwargs.get('pk'))
     if not self.comment.is_flagged:
         raise PermissionDenied
     if not is_comment_admin(request.user) and not is_comment_moderator(request.user):
         raise PermissionDenied
     return super().dispatch(request, *args, **kwargs)
コード例 #2
0
ファイル: permissions.py プロジェクト: taehyu/Comment
 def has_object_permission(self, request, view, obj):
     # GET, HEAD or OPTIONS requests are SAFE_METHODS.
     if request.method in permissions.SAFE_METHODS:
         return True
     # PUT and DELETE permissions are allowed to the owner of the comment.
     if request.method == 'DELETE':  # comment admin can delete other users comments
         return is_comment_admin(request.user) or obj.user == request.user
     return obj.user == request.user
コード例 #3
0
 def has_permission(self, request):
     return is_comment_admin(request.user) or is_comment_moderator(
         request.user)
コード例 #4
0
 def has_object_permission(self, request, obj):
     return request.user == obj.user or is_comment_admin(request.user) \
             or (obj.is_flagged and is_comment_moderator(request.user))
コード例 #5
0
ファイル: test_utils.py プロジェクト: JAYBLA/sogea
 def test_is_comment_admin_no_moderation(self):
     self.assertFalse(is_comment_admin(self.admin))
コード例 #6
0
 def has_permission(self, request, view):
     if not super().has_permission(request, view):
         return False
     return is_comment_admin(request.user) or is_comment_moderator(
         request.user)
コード例 #7
0
 def has_object_permission(self, request, view, obj):
     return obj.is_flagged and (is_comment_admin(request.user)
                                or is_comment_moderator(request.user))
コード例 #8
0
ファイル: comment_tags.py プロジェクト: taehyu/Comment
def can_delete_comment(comment, user):
    return is_comment_admin(user) or (comment.is_flagged
                                      and is_comment_moderator(user))
コード例 #9
0
ファイル: test_utils.py プロジェクト: Radi85/Comment
 def test_flagging_and_blocking_disabled(self):
     self.assertIs(is_comment_admin(self.admin), False)
コード例 #10
0
ファイル: test_utils.py プロジェクト: Radi85/Comment
 def test_one_moderation_system_enabled(self):
     self.assertIs(is_comment_admin(self.admin), True)