mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-18 19:32:24 -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
This commit is contained in:
@@ -5,6 +5,7 @@ from django.db.models import Q
|
||||
from django.utils.translation import gettext as _
|
||||
|
||||
from core.models import ObjectType
|
||||
from extras.models import NotificationGroup
|
||||
from netbox.filtersets import BaseFilterSet
|
||||
from users.models import Group, ObjectPermission, Token
|
||||
from utilities.filters import ContentTypeFilter
|
||||
@@ -32,6 +33,11 @@ class GroupFilterSet(BaseFilterSet):
|
||||
queryset=ObjectPermission.objects.all(),
|
||||
label=_('Permission (ID)'),
|
||||
)
|
||||
notification_group_id = django_filters.ModelMultipleChoiceFilter(
|
||||
field_name='notification_groups',
|
||||
queryset=NotificationGroup.objects.all(),
|
||||
label=_('Notification group (ID)'),
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Group
|
||||
@@ -67,6 +73,11 @@ class UserFilterSet(BaseFilterSet):
|
||||
queryset=ObjectPermission.objects.all(),
|
||||
label=_('Permission (ID)'),
|
||||
)
|
||||
notification_group_id = django_filters.ModelMultipleChoiceFilter(
|
||||
field_name='notification_groups',
|
||||
queryset=NotificationGroup.objects.all(),
|
||||
label=_('Notification group (ID)'),
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = get_user_model()
|
||||
|
||||
Reference in New Issue
Block a user