admin.py 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. from django.conf.urls import url
  2. from django.utils.translation import ugettext_lazy as _
  3. from misago.forums.views.forumsadmin import (ForumsList, NewForum, EditForum,
  4. MoveUpForum, MoveDownForum,
  5. DeleteForum)
  6. from misago.forums.views.permsadmin import (ForumRolesList, NewForumRole,
  7. EditForumRole, DeleteForumRole,
  8. ForumPermissions, RoleForumsACL)
  9. class MisagoAdminExtension(object):
  10. def register_urlpatterns(self, urlpatterns):
  11. # Forums section
  12. urlpatterns.namespace(r'^forums/', 'forums')
  13. # Nodes
  14. urlpatterns.namespace(r'^nodes/', 'nodes', 'forums')
  15. urlpatterns.patterns('forums:nodes',
  16. url(r'^$', ForumsList.as_view(), name='index'),
  17. url(r'^new/$', NewForum.as_view(), name='new'),
  18. url(r'^edit/(?P<forum_id>\d+)/$', EditForum.as_view(), name='edit'),
  19. url(r'^permissions/(?P<forum_id>\d+)/$', ForumPermissions.as_view(), name='permissions'),
  20. url(r'^move/up/(?P<forum_id>\d+)/$', MoveUpForum.as_view(), name='up'),
  21. url(r'^move/down/(?P<forum_id>\d+)/$', MoveDownForum.as_view(), name='down'),
  22. url(r'^delete/(?P<forum_id>\d+)/$', DeleteForum.as_view(), name='delete'),
  23. )
  24. # Forum Roles
  25. urlpatterns.namespace(r'^forums/', 'forums', 'permissions')
  26. urlpatterns.patterns('permissions:forums',
  27. url(r'^$', ForumRolesList.as_view(), name='index'),
  28. url(r'^new/$', NewForumRole.as_view(), name='new'),
  29. url(r'^edit/(?P<role_id>\d+)/$', EditForumRole.as_view(), name='edit'),
  30. url(r'^delete/(?P<role_id>\d+)/$', DeleteForumRole.as_view(), name='delete'),
  31. )
  32. # Change Role Forum Permissions
  33. urlpatterns.patterns('permissions:users',
  34. url(r'^forums/(?P<role_id>\d+)/$', RoleForumsACL.as_view(), name='forums'),
  35. )
  36. def register_navigation_nodes(self, site):
  37. site.add_node(name=_("Forums"),
  38. icon='fa fa-comments',
  39. parent='misago:admin',
  40. before='misago:admin:permissions:users:index',
  41. namespace='misago:admin:forums',
  42. link='misago:admin:forums:nodes:index')
  43. site.add_node(name=_("Forums Hierarchy"),
  44. icon='fa fa-sitemap',
  45. parent='misago:admin:forums',
  46. namespace='misago:admin:forums:nodes',
  47. link='misago:admin:forums:nodes:index')
  48. site.add_node(name=_("Forum roles"),
  49. icon='fa fa-comments-o',
  50. parent='misago:admin:permissions',
  51. after='misago:admin:permissions:users:index',
  52. namespace='misago:admin:permissions:forums',
  53. link='misago:admin:permissions:forums:index')