Example #1
0
 def test_cache(self):
     key = ('can_delete_comment', self.project.get_full_slug())
     self.assertTrue(not hasattr(self.user, 'acl_permissions_cache'))
     self.assertFalse(can_delete_comment(self.user, self.project))
     self.assertFalse(self.user.acl_permissions_cache[key])
     self.user.acl_permissions_cache[key] = True
     self.assertTrue(can_delete_comment(self.user, self.project))
Example #2
0
 def test_cache(self):
     key = ('can_delete_comment', self.project.get_full_slug())
     self.assertTrue(not hasattr(self.user, 'acl_permissions_cache'))
     self.assertFalse(can_delete_comment(self.user, self.project))
     self.assertFalse(self.user.acl_permissions_cache[key])
     self.user.acl_permissions_cache[key] = True
     self.assertTrue(can_delete_comment(self.user, self.project))
Example #3
0
 def test_cache(self):
     comment = Comment(project=self.project)
     key = ('_can_delete_comment',
            '{}-{}'.format(self.project.__class__.__name__,
                           self.project.pk))
     self.assertTrue(not hasattr(self.user, 'acl_permissions_cache'))
     self.assertFalse(can_delete_comment(self.user, comment))
     self.assertFalse(self.user.acl_permissions_cache[key])
     self.user.acl_permissions_cache[key] = True
     self.assertTrue(can_delete_comment(self.user, comment))
Example #4
0
def delete_comment(request, pk):
    """Delete comment."""
    comment_obj = get_object_or_404(Comment, pk=pk)
    check_access(request, comment_obj.project)

    if not can_delete_comment(request.user, comment_obj):
        raise PermissionDenied()

    units = get_related_units(comment_obj)
    if units.exists():
        fallback_url = units[0].get_absolute_url()
    else:
        fallback_url = comment_obj.project.get_absolute_url()

    comment_obj.delete()
    messages.info(request, _('Translation comment has been deleted.'))

    return redirect_next(request.POST.get('next'), fallback_url)
Example #5
0
def delete_comment(request, pk):
    """Delete comment."""
    comment_obj = get_object_or_404(Comment, pk=pk)
    check_access(request, comment_obj.project)

    if not can_delete_comment(request.user, comment_obj.project):
        raise PermissionDenied()

    units = get_related_units(comment_obj)
    if units.exists():
        fallback_url = units[0].get_absolute_url()
    else:
        fallback_url = comment_obj.project.get_absolute_url()

    comment_obj.delete()
    messages.info(request, _('Translation comment has been deleted.'))

    return redirect_next(request.POST.get('next'), fallback_url)
Example #6
0
 def test_delete_comment_user(self):
     comment = Comment(project=self.project)
     self.assertFalse(can_delete_comment(self.user, comment))
Example #7
0
 def test_delete_comment_owner(self):
     comment = Comment(project=self.project)
     self.assertTrue(can_delete_comment(self.owner, comment))
Example #8
0
 def test_delete_comment_user(self):
     self.assertFalse(can_delete_comment(self.user, self.project))
Example #9
0
 def test_delete_comment_owner(self):
     self.assertTrue(can_delete_comment(self.owner, self.project))
Example #10
0
 def test_delete_comment_user(self):
     self.assertFalse(can_delete_comment(self.user, self.project))
Example #11
0
 def test_delete_comment_owner(self):
     self.assertTrue(can_delete_comment(self.owner, self.project))