43 lines
2.1 KiB
Python
43 lines
2.1 KiB
Python
"""
|
|
URL configuration for notifications app.
|
|
"""
|
|
|
|
from django.urls import path
|
|
from . import views
|
|
|
|
app_name = 'notifications'
|
|
|
|
urlpatterns = [
|
|
# Dashboard
|
|
path('', views.MessageDashboardView.as_view(), name='dashboard'),
|
|
|
|
# Messages
|
|
path('messages/', views.MessageListView.as_view(), name='message_list'),
|
|
path('messages/<uuid:pk>/', views.MessageDetailView.as_view(), name='message_detail'),
|
|
path('messages/<uuid:pk>/retry/', views.MessageRetryView.as_view(), name='message_retry'),
|
|
path('messages/export/', views.MessageExportView.as_view(), name='message_export'),
|
|
|
|
# Templates
|
|
path('templates/', views.TemplateListView.as_view(), name='template_list'),
|
|
path('templates/create/', views.TemplateCreateView.as_view(), name='template_create'),
|
|
path('templates/<uuid:pk>/', views.TemplateDetailView.as_view(), name='template_detail'),
|
|
path('templates/<uuid:pk>/edit/', views.TemplateUpdateView.as_view(), name='template_update'),
|
|
path('templates/<uuid:pk>/delete/', views.TemplateDeleteView.as_view(), name='template_delete'),
|
|
path('templates/<uuid:pk>/toggle/', views.TemplateToggleView.as_view(), name='template_toggle'),
|
|
path('templates/test/', views.TemplateTestView.as_view(), name='template_test'),
|
|
|
|
# Bulk Messaging
|
|
path('bulk/', views.BulkMessageView.as_view(), name='bulk_message'),
|
|
|
|
# Analytics
|
|
path('analytics/', views.MessageAnalyticsView.as_view(), name='analytics'),
|
|
|
|
# In-App Notifications (Notification Center)
|
|
path('inbox/', views.NotificationListView.as_view(), name='notification_list'),
|
|
path('inbox/<uuid:pk>/read/', views.NotificationMarkReadView.as_view(), name='notification_mark_read'),
|
|
path('inbox/mark-all-read/', views.NotificationMarkAllReadView.as_view(), name='notification_mark_all_read'),
|
|
path('inbox/broadcast/create/', views.BroadcastNotificationCreateView.as_view(), name='broadcast_notification_create'),
|
|
path('api/unread-count/', views.NotificationUnreadCountView.as_view(), name='notification_unread_count'),
|
|
path('api/dropdown/', views.NotificationDropdownView.as_view(), name='notification_dropdown'),
|
|
]
|