def user_passes_test(test_func, login_url=LOGIN_URL):
 def _dec(view_func):
  def _checklogin(request, *args, **kwargs):
   if test_func(request.user):
    return view_func(request, *args, **kwargs)
   return HttpResponseRedirect(('%s?%s=%s' % (login_url, REDIRECT_FIELD_NAME, quote(request.get_full_path()))))
  _checklogin.__doc__ = view_func.__doc__
  _checklogin.__dict__ = view_func.__dict__
  return _checklogin
 return _dec

def user_passes_test ( test_func , login_url = LOGIN_URL ) : def _dec ( view_func ) : def _checklogin ( request , * args , ** kwargs ) : if test_func ( request . user ) : return view_func ( request , * args , ** kwargs ) return HttpResponseRedirect ( ( '%s?%s=%s' % ( login_url , REDIRECT_FIELD_NAME , quote ( request . get_full_path ( ) ) ) ) ) _checklogin . __doc__ = view_func . __doc__ _checklogin . __dict__ = view_func . __dict__ return _checklogin return _dec
decorator for views that checks that the user passes the given test .