urls.py 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. from django.urls import include, path
  2. from extras import views
  3. from utilities.urls import get_model_urls
  4. app_name = 'extras'
  5. urlpatterns = [
  6. # Custom fields
  7. path('custom-fields/', views.CustomFieldListView.as_view(), name='customfield_list'),
  8. path('custom-fields/add/', views.CustomFieldEditView.as_view(), name='customfield_add'),
  9. path('custom-fields/import/', views.CustomFieldBulkImportView.as_view(), name='customfield_import'),
  10. path('custom-fields/edit/', views.CustomFieldBulkEditView.as_view(), name='customfield_bulk_edit'),
  11. path('custom-fields/delete/', views.CustomFieldBulkDeleteView.as_view(), name='customfield_bulk_delete'),
  12. path('custom-fields/<int:pk>/', include(get_model_urls('extras', 'customfield'))),
  13. # Custom field choices
  14. path('custom-field-choices/', views.CustomFieldChoiceSetListView.as_view(), name='customfieldchoiceset_list'),
  15. path('custom-field-choices/add/', views.CustomFieldChoiceSetEditView.as_view(), name='customfieldchoiceset_add'),
  16. path('custom-field-choices/import/', views.CustomFieldChoiceSetBulkImportView.as_view(), name='customfieldchoiceset_import'),
  17. path('custom-field-choices/edit/', views.CustomFieldChoiceSetBulkEditView.as_view(), name='customfieldchoiceset_bulk_edit'),
  18. path('custom-field-choices/delete/', views.CustomFieldChoiceSetBulkDeleteView.as_view(), name='customfieldchoiceset_bulk_delete'),
  19. path('custom-field-choices/<int:pk>/', include(get_model_urls('extras', 'customfieldchoiceset'))),
  20. # Custom links
  21. path('custom-links/', views.CustomLinkListView.as_view(), name='customlink_list'),
  22. path('custom-links/add/', views.CustomLinkEditView.as_view(), name='customlink_add'),
  23. path('custom-links/import/', views.CustomLinkBulkImportView.as_view(), name='customlink_import'),
  24. path('custom-links/edit/', views.CustomLinkBulkEditView.as_view(), name='customlink_bulk_edit'),
  25. path('custom-links/delete/', views.CustomLinkBulkDeleteView.as_view(), name='customlink_bulk_delete'),
  26. path('custom-links/<int:pk>/', include(get_model_urls('extras', 'customlink'))),
  27. # Export templates
  28. path('export-templates/', views.ExportTemplateListView.as_view(), name='exporttemplate_list'),
  29. path('export-templates/add/', views.ExportTemplateEditView.as_view(), name='exporttemplate_add'),
  30. path('export-templates/import/', views.ExportTemplateBulkImportView.as_view(), name='exporttemplate_import'),
  31. path('export-templates/edit/', views.ExportTemplateBulkEditView.as_view(), name='exporttemplate_bulk_edit'),
  32. path('export-templates/delete/', views.ExportTemplateBulkDeleteView.as_view(), name='exporttemplate_bulk_delete'),
  33. path('export-templates/sync/', views.ExportTemplateBulkSyncDataView.as_view(), name='exporttemplate_bulk_sync'),
  34. path('export-templates/<int:pk>/', include(get_model_urls('extras', 'exporttemplate'))),
  35. # Saved filters
  36. path('saved-filters/', views.SavedFilterListView.as_view(), name='savedfilter_list'),
  37. path('saved-filters/add/', views.SavedFilterEditView.as_view(), name='savedfilter_add'),
  38. path('saved-filters/import/', views.SavedFilterBulkImportView.as_view(), name='savedfilter_import'),
  39. path('saved-filters/edit/', views.SavedFilterBulkEditView.as_view(), name='savedfilter_bulk_edit'),
  40. path('saved-filters/delete/', views.SavedFilterBulkDeleteView.as_view(), name='savedfilter_bulk_delete'),
  41. path('saved-filters/<int:pk>/', include(get_model_urls('extras', 'savedfilter'))),
  42. # Bookmarks
  43. path('bookmarks/add/', views.BookmarkCreateView.as_view(), name='bookmark_add'),
  44. path('bookmarks/delete/', views.BookmarkBulkDeleteView.as_view(), name='bookmark_bulk_delete'),
  45. path('bookmarks/<int:pk>/', include(get_model_urls('extras', 'bookmark'))),
  46. # Webhooks
  47. path('webhooks/', views.WebhookListView.as_view(), name='webhook_list'),
  48. path('webhooks/add/', views.WebhookEditView.as_view(), name='webhook_add'),
  49. path('webhooks/import/', views.WebhookBulkImportView.as_view(), name='webhook_import'),
  50. path('webhooks/edit/', views.WebhookBulkEditView.as_view(), name='webhook_bulk_edit'),
  51. path('webhooks/delete/', views.WebhookBulkDeleteView.as_view(), name='webhook_bulk_delete'),
  52. path('webhooks/<int:pk>/', include(get_model_urls('extras', 'webhook'))),
  53. # Event rules
  54. path('event-rules/', views.EventRuleListView.as_view(), name='eventrule_list'),
  55. path('event-rules/add/', views.EventRuleEditView.as_view(), name='eventrule_add'),
  56. path('event-rules/import/', views.EventRuleBulkImportView.as_view(), name='eventrule_import'),
  57. path('event-rules/edit/', views.EventRuleBulkEditView.as_view(), name='eventrule_bulk_edit'),
  58. path('event-rules/delete/', views.EventRuleBulkDeleteView.as_view(), name='eventrule_bulk_delete'),
  59. path('event-rules/<int:pk>/', include(get_model_urls('extras', 'eventrule'))),
  60. # Tags
  61. path('tags/', views.TagListView.as_view(), name='tag_list'),
  62. path('tags/add/', views.TagEditView.as_view(), name='tag_add'),
  63. path('tags/import/', views.TagBulkImportView.as_view(), name='tag_import'),
  64. path('tags/edit/', views.TagBulkEditView.as_view(), name='tag_bulk_edit'),
  65. path('tags/delete/', views.TagBulkDeleteView.as_view(), name='tag_bulk_delete'),
  66. path('tags/<int:pk>/', include(get_model_urls('extras', 'tag'))),
  67. # Config contexts
  68. path('config-contexts/', views.ConfigContextListView.as_view(), name='configcontext_list'),
  69. path('config-contexts/add/', views.ConfigContextEditView.as_view(), name='configcontext_add'),
  70. path('config-contexts/edit/', views.ConfigContextBulkEditView.as_view(), name='configcontext_bulk_edit'),
  71. path('config-contexts/delete/', views.ConfigContextBulkDeleteView.as_view(), name='configcontext_bulk_delete'),
  72. path('config-contexts/sync/', views.ConfigContextBulkSyncDataView.as_view(), name='configcontext_bulk_sync'),
  73. path('config-contexts/<int:pk>/', include(get_model_urls('extras', 'configcontext'))),
  74. # Config templates
  75. path('config-templates/', views.ConfigTemplateListView.as_view(), name='configtemplate_list'),
  76. path('config-templates/add/', views.ConfigTemplateEditView.as_view(), name='configtemplate_add'),
  77. path('config-templates/edit/', views.ConfigTemplateBulkEditView.as_view(), name='configtemplate_bulk_edit'),
  78. path('config-templates/delete/', views.ConfigTemplateBulkDeleteView.as_view(), name='configtemplate_bulk_delete'),
  79. path('config-templates/sync/', views.ConfigTemplateBulkSyncDataView.as_view(), name='configtemplate_bulk_sync'),
  80. path('config-templates/<int:pk>/', include(get_model_urls('extras', 'configtemplate'))),
  81. # Image attachments
  82. path('image-attachments/', views.ImageAttachmentListView.as_view(), name='imageattachment_list'),
  83. path('image-attachments/add/', views.ImageAttachmentEditView.as_view(), name='imageattachment_add'),
  84. path('image-attachments/<int:pk>/', include(get_model_urls('extras', 'imageattachment'))),
  85. # Journal entries
  86. path('journal-entries/', views.JournalEntryListView.as_view(), name='journalentry_list'),
  87. path('journal-entries/add/', views.JournalEntryEditView.as_view(), name='journalentry_add'),
  88. path('journal-entries/edit/', views.JournalEntryBulkEditView.as_view(), name='journalentry_bulk_edit'),
  89. path('journal-entries/delete/', views.JournalEntryBulkDeleteView.as_view(), name='journalentry_bulk_delete'),
  90. path('journal-entries/import/', views.JournalEntryBulkImportView.as_view(), name='journalentry_import'),
  91. path('journal-entries/<int:pk>/', include(get_model_urls('extras', 'journalentry'))),
  92. # Change logging
  93. path('changelog/', views.ObjectChangeListView.as_view(), name='objectchange_list'),
  94. path('changelog/<int:pk>/', include(get_model_urls('extras', 'objectchange'))),
  95. # User dashboard
  96. path('dashboard/reset/', views.DashboardResetView.as_view(), name='dashboard_reset'),
  97. path('dashboard/widgets/add/', views.DashboardWidgetAddView.as_view(), name='dashboardwidget_add'),
  98. path('dashboard/widgets/<uuid:id>/configure/', views.DashboardWidgetConfigView.as_view(), name='dashboardwidget_config'),
  99. path('dashboard/widgets/<uuid:id>/delete/', views.DashboardWidgetDeleteView.as_view(), name='dashboardwidget_delete'),
  100. # Reports
  101. path('reports/', views.ReportListView.as_view(), name='report_list'),
  102. path('reports/add/', views.ReportModuleCreateView.as_view(), name='reportmodule_add'),
  103. path('reports/results/<int:job_pk>/', views.ReportResultView.as_view(), name='report_result'),
  104. path('reports/<int:pk>/', include(get_model_urls('extras', 'reportmodule'))),
  105. path('reports/<str:module>/<str:name>/', views.ReportView.as_view(), name='report'),
  106. path('reports/<str:module>/<str:name>/source/', views.ReportSourceView.as_view(), name='report_source'),
  107. path('reports/<str:module>/<str:name>/jobs/', views.ReportJobsView.as_view(), name='report_jobs'),
  108. # Scripts
  109. path('scripts/', views.ScriptListView.as_view(), name='script_list'),
  110. path('scripts/add/', views.ScriptModuleCreateView.as_view(), name='scriptmodule_add'),
  111. path('scripts/results/<int:job_pk>/', views.ScriptResultView.as_view(), name='script_result'),
  112. path('scripts/<int:pk>/', include(get_model_urls('extras', 'scriptmodule'))),
  113. path('scripts/<str:module>/<str:name>/', views.ScriptView.as_view(), name='script'),
  114. path('scripts/<str:module>/<str:name>/source/', views.ScriptSourceView.as_view(), name='script_source'),
  115. path('scripts/<str:module>/<str:name>/jobs/', views.ScriptJobsView.as_view(), name='script_jobs'),
  116. # Markdown
  117. path('render/markdown/', views.RenderMarkdownView.as_view(), name="render_markdown"),
  118. ]