admin.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. from django.conf.urls import url
  2. from django.utils.translation import gettext_lazy as _
  3. from .views.admin.attachments import AttachmentsList, DeleteAttachment
  4. from .views.admin.attachmenttypes import (
  5. AttachmentTypesList,
  6. DeleteAttachmentType,
  7. EditAttachmentType,
  8. NewAttachmentType,
  9. )
  10. class MisagoAdminExtension:
  11. def register_urlpatterns(self, urlpatterns):
  12. # Attachment
  13. urlpatterns.namespace(r"^attachments/", "attachments", "system")
  14. urlpatterns.patterns(
  15. "system:attachments",
  16. url(r"^$", AttachmentsList.as_view(), name="index"),
  17. url(r"^(?P<page>\d+)/$", AttachmentsList.as_view(), name="index"),
  18. url(r"^delete/(?P<pk>\d+)/$", DeleteAttachment.as_view(), name="delete"),
  19. )
  20. # AttachmentType
  21. urlpatterns.namespace(r"^attachment-types/", "attachment-types", "system")
  22. urlpatterns.patterns(
  23. "system:attachment-types",
  24. url(r"^$", AttachmentTypesList.as_view(), name="index"),
  25. url(r"^new/$", NewAttachmentType.as_view(), name="new"),
  26. url(r"^edit/(?P<pk>\d+)/$", EditAttachmentType.as_view(), name="edit"),
  27. url(
  28. r"^delete/(?P<pk>\d+)/$", DeleteAttachmentType.as_view(), name="delete"
  29. ),
  30. )
  31. def register_navigation_nodes(self, site):
  32. site.add_node(
  33. name=_("Attachments"),
  34. icon="fa fa-cubes",
  35. parent="misago:admin:system",
  36. after="misago:admin:system:settings:index",
  37. link="misago:admin:system:attachments:index",
  38. )
  39. site.add_node(
  40. name=_("Attachment types"),
  41. icon="fa fa-cube",
  42. parent="misago:admin:system",
  43. after="misago:admin:system:attachments:index",
  44. link="misago:admin:system:attachment-types:index",
  45. )