threads.py 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. from django.conf.urls import patterns, include, url
  2. # forum view
  3. from misago.threads.views.threads import ForumView
  4. urlpatterns = patterns('',
  5. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/$', ForumView.as_view(), name='forum'),
  6. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/(?P<page>\d+)/$', ForumView.as_view(), name='forum'),
  7. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/sort-(?P<sort>[\w-]+)/$', ForumView.as_view(), name='forum'),
  8. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/sort-(?P<sort>[\w-]+)/(?P<page>\d+)/$', ForumView.as_view(), name='forum'),
  9. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/show-(?P<show>[\w-]+)/$', ForumView.as_view(), name='forum'),
  10. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/show-(?P<show>[\w-]+)/(?P<page>\d+)/$', ForumView.as_view(), name='forum'),
  11. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/sort-(?P<sort>[\w-]+)/show-(?P<show>[\w-]+)/$', ForumView.as_view(), name='forum'),
  12. url(r'^forum/(?P<forum_slug>[\w\d-]+)-(?P<forum_id>\d+)/sort-(?P<sort>[\w-]+)/show-(?P<show>[\w-]+)/(?P<page>\d+)/$', ForumView.as_view(), name='forum'),
  13. )
  14. # thread view
  15. from misago.threads.views.threads import ThreadView
  16. urlpatterns += patterns('',
  17. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/$', ThreadView.as_view(), name='thread'),
  18. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/(?P<page>\d+)/$', ThreadView.as_view(), name='thread'),
  19. )
  20. # goto views
  21. from misago.threads.views.threads import (GotoLastView, GotoNewView,
  22. GotoPostView)
  23. urlpatterns += patterns('',
  24. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/last/$', GotoLastView.as_view(), name='thread_last'),
  25. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/new/$', GotoNewView.as_view(), name='thread_new'),
  26. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/post-(?P<post_id>\d+)/$', GotoPostView.as_view(), name='thread_post'),
  27. )
  28. # moderated/reported posts views
  29. from misago.threads.views.threads import (ModeratedPostsListView,
  30. ReportedPostsListView)
  31. urlpatterns += patterns('',
  32. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/moderation-queue/$', ModeratedPostsListView.as_view(), name='thread_moderated'),
  33. url(r'^thread/(?P<thread_slug>[\w\d-]+)-(?P<thread_id>\d+)/reported-posts/$', ReportedPostsListView.as_view(), name='thread_reported'),
  34. )
  35. # post views
  36. from misago.threads.views.threads import (QuotePostView, ApprovePostView,
  37. HidePostView, UnhidePostView,
  38. DeletePostView)
  39. urlpatterns += patterns('',
  40. url(r'^post/(?P<post_id>\d+)/quote/$', QuotePostView.as_view(), name='quote_post'),
  41. url(r'^post/(?P<post_id>\d+)/approve/$', ApprovePostView.as_view(), name='approve_post'),
  42. url(r'^post/(?P<post_id>\d+)/unhide/$', UnhidePostView.as_view(), name='unhide_post'),
  43. url(r'^post/(?P<post_id>\d+)/hide/$', HidePostView.as_view(), name='hide_post'),
  44. url(r'^post/(?P<post_id>\d+)/delete/$', DeletePostView.as_view(), name='delete_post'),
  45. )
  46. # events view
  47. from misago.threads.views.threads import EventsView
  48. urlpatterns += patterns('',
  49. url(r'^edit-event/(?P<event_id>\d+)/$', EventsView.as_view(), name='edit_event'),
  50. )
  51. # posting views
  52. from misago.threads.views.threads import PostingView
  53. urlpatterns += patterns('',
  54. url(r'^start-thread/(?P<forum_id>\d+)/$', PostingView.as_view(), name='start_thread'),
  55. url(r'^reply-thread/(?P<forum_id>\d+)/(?P<thread_id>\d+)/$', PostingView.as_view(), name='reply_thread'),
  56. url(r'^edit-post/(?P<forum_id>\d+)/(?P<thread_id>\d+)/(?P<post_id>\d+)/edit/$', PostingView.as_view(), name='edit_post'),
  57. )
  58. # new threads list
  59. from misago.threads.views.newthreads import NewThreadsView, clear_new_threads
  60. urlpatterns += patterns('',
  61. url(r'^new-threads/$', NewThreadsView.as_view(), name='new_threads'),
  62. url(r'^new-threads/(?P<page>\d+)/$', NewThreadsView.as_view(), name='new_threads'),
  63. url(r'^new-threads/sort-(?P<sort>[\w-]+)$', NewThreadsView.as_view(), name='new_threads'),
  64. url(r'^new-threads/sort-(?P<sort>[\w-]+)(?P<page>\d+)/$', NewThreadsView.as_view(), name='new_threads'),
  65. url(r'^new-threads/clear/$', clear_new_threads, name='clear_new_threads'),
  66. )
  67. # unread threads list
  68. from misago.threads.views.unreadthreads import (UnreadThreadsView,
  69. clear_unread_threads)
  70. urlpatterns += patterns('',
  71. url(r'^unread-threads/$', UnreadThreadsView.as_view(), name='unread_threads'),
  72. url(r'^unread-threads/(?P<page>\d+)/$', UnreadThreadsView.as_view(), name='unread_threads'),
  73. url(r'^unread-threads/sort-(?P<sort>[\w-]+)$', UnreadThreadsView.as_view(), name='unread_threads'),
  74. url(r'^unread-threads/sort-(?P<sort>[\w-]+)(?P<page>\d+)/$', UnreadThreadsView.as_view(), name='unread_threads'),
  75. url(r'^unread-threads/clear/$', clear_unread_threads, name='clear_unread_threads'),
  76. )
  77. # moderated content list
  78. from misago.threads.views.moderatedcontent import ModeratedContentView
  79. urlpatterns += patterns('',
  80. url(r'^moderated-content/$', ModeratedContentView.as_view(), name='moderated_content'),
  81. url(r'^moderated-content/(?P<page>\d+)/$', ModeratedContentView.as_view(), name='moderated_content'),
  82. url(r'^moderated-content/sort-(?P<sort>[\w-]+)$', ModeratedContentView.as_view(), name='moderated_content'),
  83. url(r'^moderated-content/sort-(?P<sort>[\w-]+)(?P<page>\d+)/$', ModeratedContentView.as_view(), name='moderated_content'),
  84. )