mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-20 02:06:42 -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
25 lines
829 B
Python
25 lines
829 B
Python
from django.apps import AppConfig
|
|
from django.db import models
|
|
from django.db.migrations.operations import AlterModelOptions
|
|
|
|
from utilities.migration import custom_deconstruct
|
|
|
|
# Ignore verbose_name & verbose_name_plural Meta options when calculating model migrations
|
|
AlterModelOptions.ALTER_OPTION_KEYS.remove('verbose_name')
|
|
AlterModelOptions.ALTER_OPTION_KEYS.remove('verbose_name_plural')
|
|
|
|
# Use our custom destructor to ignore certain attributes when calculating field migrations
|
|
models.Field.deconstruct = custom_deconstruct
|
|
|
|
|
|
class CoreConfig(AppConfig):
|
|
name = "core"
|
|
|
|
def ready(self):
|
|
from core.api import schema # noqa
|
|
from netbox.models.features import register_models
|
|
from . import data_backends, events, search
|
|
|
|
# Register models
|
|
register_models(*self.get_models())
|