views.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from django.contrib.auth import get_user_model
  2. from django.core.exceptions import PermissionDenied
  3. from django.http import Http404, HttpResponse
  4. from misago.core import errorpages, mail
  5. from misago.core.shortcuts import paginate, validate_slug
  6. from misago.core.testproject.models import Model
  7. def test_mail_user(request):
  8. User = get_user_model()
  9. test_user = User.objects.all().first()
  10. mail.mail_user(request,
  11. test_user,
  12. "Misago Test Mail",
  13. "misago/emails/base")
  14. return HttpResponse("Mailed user!")
  15. def test_mail_users(request):
  16. User = get_user_model()
  17. mail.mail_users(request,
  18. User.objects.iterator(),
  19. "Misago Test Spam",
  20. "misago/emails/base")
  21. return HttpResponse("Mailed users!")
  22. def test_pagination(request, page=None):
  23. items = range(15)
  24. page = paginate(items, page, 5)
  25. return HttpResponse(",".join([str(x) for x in page.object_list]))
  26. def validate_slug_view(request, model_id, model_slug):
  27. model = Model(int(model_id), 'eric-the-fish')
  28. validate_slug(model, model_slug)
  29. return HttpResponse("Allright!")
  30. def raise_misago_403(request):
  31. raise PermissionDenied('Misago 403')
  32. def raise_misago_404(request):
  33. raise Http404('Misago 404')
  34. def raise_403(request):
  35. raise PermissionDenied()
  36. def raise_404(request):
  37. raise Http404()
  38. @errorpages.shared_403_exception_handler
  39. def mock_custom_403_error_page(request):
  40. return HttpResponse("Custom 403", status=403)
  41. @errorpages.shared_404_exception_handler
  42. def mock_custom_404_error_page(request):
  43. return HttpResponse("Custom 404", status=404)