notification grouping

This commit is contained in:
Yurii
2026-03-09 14:17:46 +02:00
parent 1877aeecb0
commit 49f7ac30ca
32 changed files with 1514 additions and 130 deletions
@@ -338,7 +338,8 @@
"Reaction Removed": "Reaction Removed",
"Reactions": "Reactions",
"Lock": "Lock",
"Unlock": "Unlock"
"Unlock": "Unlock",
"Assigned": "Assigned"
},
"messages": {
"checkLogsForDetails": "Check logs for details.",
@@ -566,7 +567,12 @@
"emailInbox": "{user} added email {entity} to your inbox",
"userPostReaction": "{user} reacted to your {post}",
"addedToCollaborators": "{user} added you as a collaborator to {entityType} {entity}",
"userPostInParentReaction": "{user} reacted to your {post} in {entityType} {entity}"
"userPostInParentReaction": "{user} reacted to your {post} in {entityType} {entity}",
"groupUpdatesMultiple": "{entityType} {entity} {number} new activities",
"groupUpdatesOne": "{entityType} {entity} new activity",
"groupUpdates": "{entityType} {entity}",
"groupEmailsReceivedNew": "Emails received {number} new",
"groupEmailsReceived": "Emails received"
},
"streamMessages": {
"post": "{user} posted on {entityType} {entity}",
@@ -17,6 +17,7 @@
"assignmentEmailNotificationsIgnoreEntityTypeList": "Email assignment notifications",
"reactionNotifications": "In-app notifications about reactions",
"reactionNotificationsNotFollowed": "Notifications about reactions for non-followed records",
"notificationGrouping": "Group notifications",
"autoFollowEntityTypeList": "Global Auto-Follow",
"signature": "Email Signature",
"dashboardTabList": "Tab List",
@@ -147,6 +147,10 @@
[
{"name": "reactionNotifications"},
{"name": "reactionNotificationsNotFollowed"}
],
[
{"name": "notificationGrouping"},
false
]
]
}
@@ -31,6 +31,10 @@
[
{"name": "reactionNotifications"},
{"name": "reactionNotificationsNotFollowed"}
],
[
{"name": "notificationGrouping"},
false
]
]
}
@@ -2,7 +2,8 @@
"controller": "controllers/notification",
"acl": "acl/notification",
"aclPortal": "acl-portal/notification",
"collection": "collections/note",
"model": "models/notification",
"collection": "collections/notification",
"itemViews": {
"System": "views/notification/items/system",
"EmailInbox": "views/notification/items/email-inbox"
@@ -46,12 +46,33 @@
"readOnly": true,
"index": true
},
"isFeatured": {
"type": "bool",
"readOnly": true
},
"groupedCount": {
"type": "int",
"notStorable": true,
"readOnly": true,
"utility": true
},
"groupType": {
"type": "enum",
"notStorable": true,
"readOnly": true,
"utility": true,
"options": [
"",
"Note",
"EmailReceived"
]
},
"groupedUnreadCount": {
"type": "int",
"notStorable": true,
"readOnly": true,
"utility": true
},
"createdBy": {
"type": "link",
"readOnly": true,
@@ -115,6 +115,10 @@
"type": "bool",
"default": false
},
"notificationGrouping": {
"type": "bool",
"default": true
},
"autoFollowEntityTypeList": {
"type": "multiEnum",
"view": "views/preferences/fields/auto-follow-entity-type-list",
+10
View File
@@ -355,6 +355,16 @@
"method": "get",
"actionClassName": "Espo\\Tools\\Notification\\Api\\GetGroup"
},
{
"route": "/Notification/group",
"method": "get",
"actionClassName": "Espo\\Tools\\Notification\\Api\\GetGroupAll"
},
{
"route": "/Notification/group/:id",
"method": "delete",
"actionClassName": "Espo\\Tools\\Notification\\Api\\DeleteGroup"
},
{
"route": "/EmailTemplate/:id/prepare",
"method": "post",