views.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  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_misago_405(request):
  35. return errorpages.not_allowed(request)
  36. def raise_403(request):
  37. raise PermissionDenied()
  38. def raise_404(request):
  39. raise Http404()
  40. @errorpages.shared_403_exception_handler
  41. def mock_custom_403_error_page(request):
  42. return HttpResponse("Custom 403", status=403)
  43. @errorpages.shared_404_exception_handler
  44. def mock_custom_404_error_page(request):
  45. return HttpResponse("Custom 404", status=404)