admin.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from django.conf.urls import url
  2. from django.utils.translation import ugettext_lazy as _
  3. from misago.acl.views import (RolesList, NewRole, EditRole, RoleUsers,
  4. DeleteRole)
  5. class MisagoAdminExtension(object):
  6. def register_urlpatterns(self, urlpatterns):
  7. # Permissions section
  8. urlpatterns.namespace(r'^permissions/', 'permissions')
  9. # Roles
  10. urlpatterns.namespace(r'^users/', 'users', 'permissions')
  11. urlpatterns.patterns(
  12. 'permissions:users',
  13. url(r'^$', RolesList.as_view(), name='index'),
  14. url(r'^new/$', NewRole.as_view(), name='new'),
  15. url(r'^edit/(?P<pk>\d+)/$', EditRole.as_view(), name='edit'),
  16. url(r'^users/(?P<pk>\d+)/$', RoleUsers.as_view(), name='users'),
  17. url(r'^delete/(?P<pk>\d+)/$', DeleteRole.as_view(), name='delete'),
  18. )
  19. def register_navigation_nodes(self, site):
  20. site.add_node(
  21. name=_("Permissions"),
  22. icon='fa fa-adjust',
  23. parent='misago:admin',
  24. after='misago:admin:users:accounts:index',
  25. namespace='misago:admin:permissions',
  26. link='misago:admin:permissions:users:index',
  27. )
  28. site.add_node(
  29. name=_("User roles"),
  30. icon='fa fa-th-large',
  31. parent='misago:admin:permissions',
  32. namespace='misago:admin:permissions:users',
  33. link='misago:admin:permissions:users:index',
  34. )