urls.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. from django.conf import settings
  2. from django.conf.urls import patterns, include, url
  3. # Register Misago Apps
  4. urlpatterns = patterns('',
  5. url(r'^', include('misago.legal.urls')),
  6. url(r'^', include('misago.users.urls')),
  7. url(r'^', include('misago.categories.urls')),
  8. url(r'^', include('misago.threads.urls')),
  9. url(r'^', include('misago.readtracker.urls')),
  10. )
  11. urlpatterns += patterns('misago.core.views',
  12. # "misago:index" link symbolises "root" of Misago links space
  13. # any request with path that falls below this one is assumed to be directed
  14. # at Misago and will be handled by misago.views.exceptionhandler if it
  15. # results in Http404 or PermissionDenied exception
  16. url(r'^$', 'forum_index', name='index'),
  17. )
  18. # Register API
  19. apipatterns = patterns('',
  20. url(r'^', include('misago.categories.urls.api')),
  21. url(r'^', include('misago.threads.urls.api')),
  22. url(r'^', include('misago.users.urls.api')),
  23. )
  24. urlpatterns += patterns('',
  25. url(r'^api/', include(apipatterns, namespace='api')),
  26. )
  27. # Register Misago ACP
  28. if settings.MISAGO_ADMIN_PATH:
  29. # Admin patterns recognised by Misago
  30. adminpatterns = patterns('',
  31. url(r'^', include('misago.admin.urls')),
  32. )
  33. admin_prefix = r'^%s/' % settings.MISAGO_ADMIN_PATH
  34. urlpatterns += patterns('',
  35. url(admin_prefix, include(adminpatterns, namespace='admin')),
  36. )
  37. # Make error pages accessible casually in DEBUG
  38. if settings.DEBUG:
  39. urlpatterns += patterns('misago.core.errorpages',
  40. url(r'^403/$', 'permission_denied'),
  41. url(r'^404/$', 'page_not_found'),
  42. url(r'^405/$', 'not_allowed'),
  43. url(r'^csrf-failure/$', 'csrf_failure'),
  44. )