decorators.py 692 B

1234567891011121314151617181920212223
  1. from django.shortcuts import render
  2. def ajax_only(f):
  3. def decorator(request, *args, **kwargs):
  4. if not request.is_ajax():
  5. response = render(request, 'misago/errorpages/wrong_way.html')
  6. response.status_code = 405
  7. return response
  8. else:
  9. return f(request, *args, **kwargs)
  10. return decorator
  11. def require_POST(f):
  12. def decorator(request, *args, **kwargs):
  13. if not request.method == 'POST':
  14. response = render(request, 'misago/errorpages/wrong_way.html')
  15. response.status_code = 405
  16. return response
  17. else:
  18. return f(request, *args, **kwargs)
  19. return decorator