def actual_decorator(obj): def test_func(request, *args, **kwargs): secret_key = secret_key_func(request, *args, **kwargs) return validate_signature(request, secret_key) decorator = request_passes_test(test_func) return wrap_object(obj, decorator)
def authentication_required(obj): """ Requires that the user be authenticated either by a signature or by being actively logged in. """ def test_func(request, *args, **kwargs): #secret_key = get_secret_key(request, *args, **kwargs) #if secret_key: #return validate_signature(request, secret_key) #else: return request.user.is_authenticated() decorator = request_passes_test(test_func) return wrap_object(obj, decorator)