예제 #1
0
파일: tests.py 프로젝트: saily/weblate
 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))
예제 #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))
예제 #3
0
파일: tests.py 프로젝트: tm1000/weblate
 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))
예제 #4
0
파일: edit.py 프로젝트: anurag1212/weblate
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)
예제 #5
0
파일: edit.py 프로젝트: saily/weblate
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)
예제 #6
0
파일: tests.py 프로젝트: BGforgeNet/weblate
 def test_delete_comment_user(self):
     comment = Comment(project=self.project)
     self.assertFalse(can_delete_comment(self.user, comment))
예제 #7
0
파일: tests.py 프로젝트: BGforgeNet/weblate
 def test_delete_comment_owner(self):
     comment = Comment(project=self.project)
     self.assertTrue(can_delete_comment(self.owner, comment))
예제 #8
0
 def test_delete_comment_user(self):
     self.assertFalse(can_delete_comment(self.user, self.project))
예제 #9
0
 def test_delete_comment_owner(self):
     self.assertTrue(can_delete_comment(self.owner, self.project))
예제 #10
0
파일: tests.py 프로젝트: saily/weblate
 def test_delete_comment_user(self):
     self.assertFalse(can_delete_comment(self.user, self.project))
예제 #11
0
파일: tests.py 프로젝트: saily/weblate
 def test_delete_comment_owner(self):
     self.assertTrue(can_delete_comment(self.owner, self.project))