passing a few more tests, fixed some permissions bugs
This commit is contained in:
@@ -4,6 +4,7 @@ from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.contrib.auth.decorators import login_required,user_passes_test
|
||||
from django.urls import reverse
|
||||
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.core.exceptions import PermissionDenied
|
||||
@@ -29,6 +30,9 @@ def user_passes_test(test_func, message=default_message,login_url=None,redirect_
|
||||
def decorator(view_func):
|
||||
@wraps(view_func, assigned=available_attrs(view_func))
|
||||
def _wrapped_view(request, *args, **kwargs):
|
||||
if request.user.is_anonymous:
|
||||
url = reverse('login')+'?next='+request.path
|
||||
return HttpResponseRedirect(url)
|
||||
if not test_func(request.user):
|
||||
messages.error(request, message)
|
||||
return HttpResponseRedirect(login_url)
|
||||
|
||||
Reference in New Issue
Block a user