admin.py 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. DeleteForum, MoveUpForum,
  5. MoveDownForum)
  6. from misago.forums.views.permsadmin import (ForumRolesList, NewForumRole,
  7. EditForumRole, DeleteForumRole,
  8. 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'^move/up/(?P<forum_id>\d+)/$', MoveUpForum.as_view(), name='up'),
  20. url(r'^move/down/(?P<forum_id>\d+)/$', MoveDownForum.as_view(), name='down'),
  21. url(r'^delete/(?P<forum_id>\d+)/$', DeleteForum.as_view(), name='delete'),
  22. )
  23. # Forum Roles
  24. urlpatterns.namespace(r'^forums/', 'forums', 'permissions')
  25. urlpatterns.patterns('permissions:forums',
  26. url(r'^$', ForumRolesList.as_view(), name='index'),
  27. url(r'^new/$', NewForumRole.as_view(), name='new'),
  28. url(r'^edit/(?P<role_id>\d+)/$', EditForumRole.as_view(), name='edit'),
  29. url(r'^delete/(?P<role_id>\d+)/$', DeleteForumRole.as_view(), name='delete'),
  30. )
  31. # Change Role Forum Permissions
  32. urlpatterns.patterns('permissions:users',
  33. url(r'^forums/(?P<role_id>\d+)/$', RoleForumsACL.as_view(), name='forums'),
  34. )
  35. def register_navigation_nodes(self, site):
  36. site.add_node(name=_("Forums"),
  37. icon='fa fa-comments',
  38. parent='misago:admin',
  39. before='misago:admin:permissions:users:index',
  40. namespace='misago:admin:forums',
  41. link='misago:admin:forums:nodes:index')
  42. site.add_node(name=_("Forums Hierarchy"),
  43. icon='fa fa-sitemap',
  44. parent='misago:admin:forums',
  45. namespace='misago:admin:forums:nodes',
  46. link='misago:admin:forums:nodes:index')
  47. site.add_node(name=_("Forum roles"),
  48. icon='fa fa-comments-o',
  49. parent='misago:admin:permissions',
  50. after='misago:admin:permissions:users:index',
  51. namespace='misago:admin:permissions:forums',
  52. link='misago:admin:permissions:forums:index')