2023-06-29 14:36:11 -04:00
|
|
|
from django.urls import include, path
|
2017-03-30 21:55:57 -04:00
|
|
|
|
2022-10-06 16:21:23 -04:00
|
|
|
from extras import views
|
|
|
|
from utilities.urls import get_model_urls
|
2019-02-22 02:29:00 -05:00
|
|
|
|
2017-03-30 21:55:57 -04:00
|
|
|
|
2017-04-05 14:26:33 -04:00
|
|
|
app_name = 'extras'
|
2017-03-30 21:55:57 -04:00
|
|
|
urlpatterns = [
|
|
|
|
|
2021-06-22 16:28:06 -04:00
|
|
|
# Custom fields
|
|
|
|
path('custom-fields/', views.CustomFieldListView.as_view(), name='customfield_list'),
|
|
|
|
path('custom-fields/add/', views.CustomFieldEditView.as_view(), name='customfield_add'),
|
|
|
|
path('custom-fields/import/', views.CustomFieldBulkImportView.as_view(), name='customfield_import'),
|
|
|
|
path('custom-fields/edit/', views.CustomFieldBulkEditView.as_view(), name='customfield_bulk_edit'),
|
|
|
|
path('custom-fields/delete/', views.CustomFieldBulkDeleteView.as_view(), name='customfield_bulk_delete'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('custom-fields/<int:pk>/', include(get_model_urls('extras', 'customfield'))),
|
2021-06-23 17:09:15 -04:00
|
|
|
|
2023-07-19 10:26:24 -04:00
|
|
|
# Custom field choices
|
|
|
|
path('custom-field-choices/', views.CustomFieldChoiceSetListView.as_view(), name='customfieldchoiceset_list'),
|
|
|
|
path('custom-field-choices/add/', views.CustomFieldChoiceSetEditView.as_view(), name='customfieldchoiceset_add'),
|
|
|
|
path('custom-field-choices/import/', views.CustomFieldChoiceSetBulkImportView.as_view(), name='customfieldchoiceset_import'),
|
|
|
|
path('custom-field-choices/edit/', views.CustomFieldChoiceSetBulkEditView.as_view(), name='customfieldchoiceset_bulk_edit'),
|
|
|
|
path('custom-field-choices/delete/', views.CustomFieldChoiceSetBulkDeleteView.as_view(), name='customfieldchoiceset_bulk_delete'),
|
|
|
|
path('custom-field-choices/<int:pk>/', include(get_model_urls('extras', 'customfieldchoiceset'))),
|
|
|
|
|
2021-06-23 17:09:15 -04:00
|
|
|
# Custom links
|
|
|
|
path('custom-links/', views.CustomLinkListView.as_view(), name='customlink_list'),
|
|
|
|
path('custom-links/add/', views.CustomLinkEditView.as_view(), name='customlink_add'),
|
|
|
|
path('custom-links/import/', views.CustomLinkBulkImportView.as_view(), name='customlink_import'),
|
|
|
|
path('custom-links/edit/', views.CustomLinkBulkEditView.as_view(), name='customlink_bulk_edit'),
|
|
|
|
path('custom-links/delete/', views.CustomLinkBulkDeleteView.as_view(), name='customlink_bulk_delete'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('custom-links/<int:pk>/', include(get_model_urls('extras', 'customlink'))),
|
2021-06-22 16:28:06 -04:00
|
|
|
|
2021-06-23 20:39:35 -04:00
|
|
|
# Export templates
|
|
|
|
path('export-templates/', views.ExportTemplateListView.as_view(), name='exporttemplate_list'),
|
|
|
|
path('export-templates/add/', views.ExportTemplateEditView.as_view(), name='exporttemplate_add'),
|
|
|
|
path('export-templates/import/', views.ExportTemplateBulkImportView.as_view(), name='exporttemplate_import'),
|
|
|
|
path('export-templates/edit/', views.ExportTemplateBulkEditView.as_view(), name='exporttemplate_bulk_edit'),
|
|
|
|
path('export-templates/delete/', views.ExportTemplateBulkDeleteView.as_view(), name='exporttemplate_bulk_delete'),
|
2023-02-08 18:24:18 -05:00
|
|
|
path('export-templates/sync/', views.ExportTemplateBulkSyncDataView.as_view(), name='exporttemplate_bulk_sync'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('export-templates/<int:pk>/', include(get_model_urls('extras', 'exporttemplate'))),
|
2021-06-23 20:39:35 -04:00
|
|
|
|
2022-11-02 12:27:53 -04:00
|
|
|
# Saved filters
|
|
|
|
path('saved-filters/', views.SavedFilterListView.as_view(), name='savedfilter_list'),
|
|
|
|
path('saved-filters/add/', views.SavedFilterEditView.as_view(), name='savedfilter_add'),
|
|
|
|
path('saved-filters/import/', views.SavedFilterBulkImportView.as_view(), name='savedfilter_import'),
|
|
|
|
path('saved-filters/edit/', views.SavedFilterBulkEditView.as_view(), name='savedfilter_bulk_edit'),
|
|
|
|
path('saved-filters/delete/', views.SavedFilterBulkDeleteView.as_view(), name='savedfilter_bulk_delete'),
|
|
|
|
path('saved-filters/<int:pk>/', include(get_model_urls('extras', 'savedfilter'))),
|
|
|
|
|
2023-06-29 14:36:11 -04:00
|
|
|
# Bookmarks
|
|
|
|
path('bookmarks/add/', views.BookmarkCreateView.as_view(), name='bookmark_add'),
|
|
|
|
path('bookmarks/delete/', views.BookmarkBulkDeleteView.as_view(), name='bookmark_bulk_delete'),
|
|
|
|
path('bookmarks/<int:pk>/', include(get_model_urls('extras', 'bookmark'))),
|
|
|
|
|
2021-06-23 21:24:23 -04:00
|
|
|
# Webhooks
|
|
|
|
path('webhooks/', views.WebhookListView.as_view(), name='webhook_list'),
|
|
|
|
path('webhooks/add/', views.WebhookEditView.as_view(), name='webhook_add'),
|
|
|
|
path('webhooks/import/', views.WebhookBulkImportView.as_view(), name='webhook_import'),
|
|
|
|
path('webhooks/edit/', views.WebhookBulkEditView.as_view(), name='webhook_bulk_edit'),
|
|
|
|
path('webhooks/delete/', views.WebhookBulkDeleteView.as_view(), name='webhook_bulk_delete'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('webhooks/<int:pk>/', include(get_model_urls('extras', 'webhook'))),
|
2021-06-23 21:24:23 -04:00
|
|
|
|
2023-11-30 13:36:33 -08:00
|
|
|
# Event rules
|
|
|
|
path('event-rules/', views.EventRuleListView.as_view(), name='eventrule_list'),
|
|
|
|
path('event-rules/add/', views.EventRuleEditView.as_view(), name='eventrule_add'),
|
|
|
|
path('event-rules/import/', views.EventRuleBulkImportView.as_view(), name='eventrule_import'),
|
|
|
|
path('event-rules/edit/', views.EventRuleBulkEditView.as_view(), name='eventrule_bulk_edit'),
|
|
|
|
path('event-rules/delete/', views.EventRuleBulkDeleteView.as_view(), name='eventrule_bulk_delete'),
|
|
|
|
path('event-rules/<int:pk>/', include(get_model_urls('extras', 'eventrule'))),
|
|
|
|
|
2018-05-22 12:22:46 -04:00
|
|
|
# Tags
|
2020-02-05 16:12:48 -05:00
|
|
|
path('tags/', views.TagListView.as_view(), name='tag_list'),
|
2020-06-12 09:48:23 -04:00
|
|
|
path('tags/add/', views.TagEditView.as_view(), name='tag_add'),
|
|
|
|
path('tags/import/', views.TagBulkImportView.as_view(), name='tag_import'),
|
2020-02-05 16:12:48 -05:00
|
|
|
path('tags/edit/', views.TagBulkEditView.as_view(), name='tag_bulk_edit'),
|
|
|
|
path('tags/delete/', views.TagBulkDeleteView.as_view(), name='tag_bulk_delete'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('tags/<int:pk>/', include(get_model_urls('extras', 'tag'))),
|
2018-05-22 12:22:46 -04:00
|
|
|
|
2018-06-27 16:02:34 -04:00
|
|
|
# Config contexts
|
2020-02-05 16:12:48 -05:00
|
|
|
path('config-contexts/', views.ConfigContextListView.as_view(), name='configcontext_list'),
|
2020-05-21 13:59:19 -04:00
|
|
|
path('config-contexts/add/', views.ConfigContextEditView.as_view(), name='configcontext_add'),
|
2020-02-05 16:12:48 -05:00
|
|
|
path('config-contexts/edit/', views.ConfigContextBulkEditView.as_view(), name='configcontext_bulk_edit'),
|
|
|
|
path('config-contexts/delete/', views.ConfigContextBulkDeleteView.as_view(), name='configcontext_bulk_delete'),
|
2023-02-07 16:44:05 -05:00
|
|
|
path('config-contexts/sync/', views.ConfigContextBulkSyncDataView.as_view(), name='configcontext_bulk_sync'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('config-contexts/<int:pk>/', include(get_model_urls('extras', 'configcontext'))),
|
2018-06-27 16:02:34 -04:00
|
|
|
|
2023-02-17 08:33:08 -05:00
|
|
|
# Config templates
|
|
|
|
path('config-templates/', views.ConfigTemplateListView.as_view(), name='configtemplate_list'),
|
|
|
|
path('config-templates/add/', views.ConfigTemplateEditView.as_view(), name='configtemplate_add'),
|
|
|
|
path('config-templates/edit/', views.ConfigTemplateBulkEditView.as_view(), name='configtemplate_bulk_edit'),
|
|
|
|
path('config-templates/delete/', views.ConfigTemplateBulkDeleteView.as_view(), name='configtemplate_bulk_delete'),
|
|
|
|
path('config-templates/sync/', views.ConfigTemplateBulkSyncDataView.as_view(), name='configtemplate_bulk_sync'),
|
|
|
|
path('config-templates/<int:pk>/', include(get_model_urls('extras', 'configtemplate'))),
|
|
|
|
|
2017-03-30 21:55:57 -04:00
|
|
|
# Image attachments
|
2023-05-05 06:48:13 -07:00
|
|
|
path('image-attachments/', views.ImageAttachmentListView.as_view(), name='imageattachment_list'),
|
2021-10-01 12:34:30 -04:00
|
|
|
path('image-attachments/add/', views.ImageAttachmentEditView.as_view(), name='imageattachment_add'),
|
2022-10-07 17:17:58 -04:00
|
|
|
path('image-attachments/<int:pk>/', include(get_model_urls('extras', 'imageattachment'))),
|
2017-03-30 21:55:57 -04:00
|
|
|
|
2021-03-16 15:00:08 -04:00
|
|
|
# Journal entries
|
2021-03-16 15:57:23 -04:00
|
|
|
path('journal-entries/', views.JournalEntryListView.as_view(), name='journalentry_list'),
|
2021-03-16 15:00:08 -04:00
|
|
|
path('journal-entries/add/', views.JournalEntryEditView.as_view(), name='journalentry_add'),
|
2021-03-17 10:41:06 -04:00
|
|
|
path('journal-entries/edit/', views.JournalEntryBulkEditView.as_view(), name='journalentry_bulk_edit'),
|
|
|
|
path('journal-entries/delete/', views.JournalEntryBulkDeleteView.as_view(), name='journalentry_bulk_delete'),
|
2023-05-05 06:57:09 -07:00
|
|
|
path('journal-entries/import/', views.JournalEntryBulkImportView.as_view(), name='journalentry_import'),
|
2022-10-06 16:21:23 -04:00
|
|
|
path('journal-entries/<int:pk>/', include(get_model_urls('extras', 'journalentry'))),
|
2021-03-16 15:00:08 -04:00
|
|
|
|
2019-08-09 12:33:33 -04:00
|
|
|
# Change logging
|
2020-02-05 16:12:48 -05:00
|
|
|
path('changelog/', views.ObjectChangeListView.as_view(), name='objectchange_list'),
|
2022-10-07 17:17:58 -04:00
|
|
|
path('changelog/<int:pk>/', include(get_model_urls('extras', 'objectchange'))),
|
2019-08-09 12:33:33 -04:00
|
|
|
|
2023-02-24 16:04:00 -05:00
|
|
|
# User dashboard
|
2023-03-30 12:46:06 -04:00
|
|
|
path('dashboard/reset/', views.DashboardResetView.as_view(), name='dashboard_reset'),
|
2023-02-24 16:04:00 -05:00
|
|
|
path('dashboard/widgets/add/', views.DashboardWidgetAddView.as_view(), name='dashboardwidget_add'),
|
|
|
|
path('dashboard/widgets/<uuid:id>/configure/', views.DashboardWidgetConfigView.as_view(), name='dashboardwidget_config'),
|
|
|
|
path('dashboard/widgets/<uuid:id>/delete/', views.DashboardWidgetDeleteView.as_view(), name='dashboardwidget_delete'),
|
|
|
|
|
2023-03-24 21:00:36 -04:00
|
|
|
# Scripts
|
|
|
|
path('scripts/', views.ScriptListView.as_view(), name='script_list'),
|
|
|
|
path('scripts/add/', views.ScriptModuleCreateView.as_view(), name='scriptmodule_add'),
|
2023-03-28 15:47:09 -04:00
|
|
|
path('scripts/results/<int:job_pk>/', views.ScriptResultView.as_view(), name='script_result'),
|
2024-02-23 05:27:37 -08:00
|
|
|
path('scripts/<int:pk>/', views.ScriptView.as_view(), name='script'),
|
|
|
|
path('scripts/<int:pk>/source/', views.ScriptSourceView.as_view(), name='script_source'),
|
|
|
|
path('scripts/<int:pk>/jobs/', views.ScriptJobsView.as_view(), name='script_jobs'),
|
|
|
|
path('script-modules/<int:pk>/', include(get_model_urls('extras', 'scriptmodule'))),
|
|
|
|
|
|
|
|
# Redirects for legacy script URLs
|
|
|
|
# TODO: Remove in NetBox v4.1
|
|
|
|
path('scripts/<str:module>/<str:name>/', views.LegacyScriptRedirectView.as_view()),
|
|
|
|
path('scripts/<str:module>/<str:name>/<path:path>/', views.LegacyScriptRedirectView.as_view()),
|
2017-09-21 16:32:05 -04:00
|
|
|
|
2023-03-09 13:21:13 +00:00
|
|
|
# Markdown
|
2023-06-22 11:04:24 -07:00
|
|
|
path('render/markdown/', views.RenderMarkdownView.as_view(), name="render_markdown"),
|
2017-03-30 21:55:57 -04:00
|
|
|
]
|