mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-14 09:51:22 -06:00

* Initial work on #15621 * Signal receiver should ignore models which don't support notifications * Flesh out NotificationGroup functionality * Add NotificationGroup filters for users & groups * Separate read & dimiss actions * Enable one-click dismissals from notifications list * Include total notification count in dropdown * Drop 'kind' field from Notification model * Register event types in the registry; add colors & icons * Enable event rules to target notification groups * Define dynamic choices for Notification.event_name * Move event registration to core * Add more job events * Misc cleanup * Misc cleanup * Correct absolute URLs for notifications & subscriptions * Optimize subscriber notifications * Use core event types when queuing events * Standardize queued event attribute to event_type; change content_type to object_type * Rename Notification.event_name to event_type * Restore NotificationGroupBulkEditView * Add API tests * Add view & filterset tests * Add model documentation * Fix tests * Update notification bell when notifications have been cleared * Ensure subscribe button appears only on relevant models * Notifications/subscriptions cannot be ordered by object * Misc cleanup * Add event icon & type to notifications table * Adjust icon sizing * Mute color of read notifications * Misc cleanup
34 lines
1.4 KiB
Python
34 lines
1.4 KiB
Python
from django.urls import include, path
|
|
|
|
from netbox.api.routers import NetBoxRouter
|
|
from . import views
|
|
|
|
|
|
router = NetBoxRouter()
|
|
router.APIRootView = views.ExtrasRootView
|
|
|
|
router.register('event-rules', views.EventRuleViewSet)
|
|
router.register('webhooks', views.WebhookViewSet)
|
|
router.register('custom-fields', views.CustomFieldViewSet)
|
|
router.register('custom-field-choice-sets', views.CustomFieldChoiceSetViewSet)
|
|
router.register('custom-links', views.CustomLinkViewSet)
|
|
router.register('export-templates', views.ExportTemplateViewSet)
|
|
router.register('saved-filters', views.SavedFilterViewSet)
|
|
router.register('bookmarks', views.BookmarkViewSet)
|
|
router.register('notifications', views.NotificationViewSet)
|
|
router.register('notification-groups', views.NotificationGroupViewSet)
|
|
router.register('subscriptions', views.SubscriptionViewSet)
|
|
router.register('tags', views.TagViewSet)
|
|
router.register('image-attachments', views.ImageAttachmentViewSet)
|
|
router.register('journal-entries', views.JournalEntryViewSet)
|
|
router.register('config-contexts', views.ConfigContextViewSet)
|
|
router.register('config-templates', views.ConfigTemplateViewSet)
|
|
router.register('scripts', views.ScriptViewSet, basename='script')
|
|
router.register('object-types', views.ObjectTypeViewSet)
|
|
|
|
app_name = 'extras-api'
|
|
urlpatterns = [
|
|
path('dashboard/', views.DashboardView.as_view(), name='dashboard'),
|
|
path('', include(router.urls)),
|
|
]
|