diff --git a/application/Espo/Hooks/Common/Stream.php b/application/Espo/Hooks/Common/Stream.php index 4623d02b2e..61a1a367e4 100644 --- a/application/Espo/Hooks/Common/Stream.php +++ b/application/Espo/Hooks/Common/Stream.php @@ -240,6 +240,8 @@ class Stream extends \Espo\Core\Hooks\Base if ($this->getUser()->id === $assignedUserId) { $entity->set('isFollowed', true); } + } else { + $this->getStreamService()->noteAssign($entity); } } $this->getStreamService()->handleAudited($entity); diff --git a/application/Espo/Resources/i18n/en_US/Global.json b/application/Espo/Resources/i18n/en_US/Global.json index 5169955f1f..8c1287a75e 100644 --- a/application/Espo/Resources/i18n/en_US/Global.json +++ b/application/Espo/Resources/i18n/en_US/Global.json @@ -323,17 +323,24 @@ "createThis": "{user} created this {entityType}", - "createAssignedThis": "{user} created this {entity} assigned to {assignee}", + "createAssignedThis": "{user} created this {entityType} assigned to {assignee}", "createAssigned": "{user} created {entityType} {entity} assigned to {assignee}", "createAssignedYou": "{user} created {entityType} {entity} assigned to you", + "createAssignedThisSelf": "{user} created this {entityType} self-assigned", + + "createAssignedSelf": "{user} created {entityType} {entity} self-assigned", + "assign": "{user} assigned {entityType} {entity} to {assignee}", "assignThis": "{user} assigned this {entityType} to {assignee}", "assignYou": "{user} assigned {entityType} {entity} to you", + "assignThisVoid": "{user} unassigned this {entityType}", + "assignVoid": "{user} unassigned {entityType} {entity}", + "assignThisSelf": "{user} self-assigned this {entityType}", "assignSelf": "{user} self-assigned {entityType} {entity}", diff --git a/application/Espo/Services/Stream.php b/application/Espo/Services/Stream.php index dc78c70c6f..7d2b8e50f8 100644 --- a/application/Espo/Services/Stream.php +++ b/application/Espo/Services/Stream.php @@ -807,7 +807,7 @@ class Stream extends \Espo\Core\Services\Base $data = array(); - if ($entity->get('assignedUserId') != $entity->get('createdById')) { + if ($entity->get('assignedUserId')) { if (!$entity->has('assignedUserName')) { $this->loadAssignedUserName($entity); } @@ -872,13 +872,19 @@ class Stream extends \Espo\Core\Services\Base $note->set('superParentType', 'Account'); } - if (!$entity->has('assignedUserName')) { - $this->loadAssignedUserName($entity); + if ($entity->get('assignedUserId')) { + if (!$entity->has('assignedUserName')) { + $this->loadAssignedUserName($entity); + } + $note->set('data', array( + 'assignedUserId' => $entity->get('assignedUserId'), + 'assignedUserName' => $entity->get('assignedUserName'), + )); + } else { + $note->set('data', array( + 'assignedUserId' => null + )); } - $note->set('data', array( - 'assignedUserId' => $entity->get('assignedUserId'), - 'assignedUserName' => $entity->get('assignedUserName'), - )); $this->getEntityManager()->saveEntity($note); } diff --git a/client/src/views/stream/notes/assign.js b/client/src/views/stream/notes/assign.js index 5247ac5a22..096a635a0a 100644 --- a/client/src/views/stream/notes/assign.js +++ b/client/src/views/stream/notes/assign.js @@ -55,16 +55,24 @@ Espo.define('views/stream/notes/assign', 'views/stream/note', function (Dep) { this.messageData['assignee'] = '' + data.assignedUserName + ''; if (this.isUserStream) { - if (this.assignedUserId == this.model.get('createdById')) { - this.messageName += 'Self'; - } else { - if (this.assignedUserId == this.getUser().id) { - this.messageName += 'You'; + if (this.assignedUserId) { + if (this.assignedUserId == this.model.get('createdById')) { + this.messageName += 'Self'; + } else { + if (this.assignedUserId == this.getUser().id) { + this.messageName += 'You'; + } } + } else { + this.messageName += 'Void'; } } else { - if (this.assignedUserId == this.model.get('createdById')) { - this.messageName += 'Self'; + if (this.assignedUserId) { + if (this.assignedUserId == this.model.get('createdById')) { + this.messageName += 'Self'; + } + } else { + this.messageName += 'Void'; } } diff --git a/client/src/views/stream/notes/create.js b/client/src/views/stream/notes/create.js index 9feec2537b..2ad7affc97 100644 --- a/client/src/views/stream/notes/create.js +++ b/client/src/views/stream/notes/create.js @@ -63,11 +63,20 @@ Espo.define('views/stream/notes/create', 'views/stream/note', function (Dep) { if (this.assignedUserId) { this.messageName = 'createAssigned'; + if (this.isThis) { this.messageName += 'This'; + + if (this.assignedUserId == this.model.get('createdById')) { + this.messageName += 'Self'; + } } else { - if (isYou) { - this.messageName += 'You'; + if (this.assignedUserId == this.model.get('createdById')) { + this.messageName += 'Self'; + } else { + if (isYou) { + this.messageName += 'You'; + } } } }