diff --git a/plugins/activity-assets/lang/en.json b/plugins/activity-assets/lang/en.json index e779b74237..67027cd741 100644 --- a/plugins/activity-assets/lang/en.json +++ b/plugins/activity-assets/lang/en.json @@ -4,6 +4,7 @@ "Edit": "Edit", "Edited": "edited", "DocCreated": "created {_class}", + "DocAdded": "added {_class}", "DocDeleted": "deleted {_class}", "Activity": "Activity", "Changed": "changed", diff --git a/plugins/activity-assets/lang/ru.json b/plugins/activity-assets/lang/ru.json index c5f55838b2..4d5bfb17cd 100644 --- a/plugins/activity-assets/lang/ru.json +++ b/plugins/activity-assets/lang/ru.json @@ -4,6 +4,7 @@ "Edit": "Редактировать", "Edited": "отредактировал(а)", "DocCreated": "создал(а) {_class}", + "DocAdded": "добавил(а) {_class}", "DocDeleted": "удалил(а) {_class}", "Activity": "Активность", "Changed": "изменил(а)", diff --git a/plugins/activity-resources/src/plugin.ts b/plugins/activity-resources/src/plugin.ts index d8a955c50d..f928bfa04c 100644 --- a/plugins/activity-resources/src/plugin.ts +++ b/plugins/activity-resources/src/plugin.ts @@ -20,6 +20,7 @@ import { mergeIds } from '@hcengineering/platform' export default mergeIds(activityId, activity, { string: { DocCreated: '' as IntlString, + DocAdded: '' as IntlString, DocDeleted: '' as IntlString, CollectionUpdated: '' as IntlString, All: '' as IntlString diff --git a/plugins/activity-resources/src/utils.ts b/plugins/activity-resources/src/utils.ts index acfd1c7833..2a491b525f 100644 --- a/plugins/activity-resources/src/utils.ts +++ b/plugins/activity-resources/src/utils.ts @@ -109,7 +109,7 @@ export async function updateViewlet ( let iconComponent: AnyComponent | undefined if (viewlet === undefined) { - ;({ viewlet, model } = await checkInlineViewlets(dtx, viewlet, client, model)) + ;({ viewlet, model } = await checkInlineViewlets(dtx, viewlet, client, model, dtx.isOwnTx)) if (model !== undefined) { // Check for State attribute for (const a of model) { @@ -133,14 +133,15 @@ async function checkInlineViewlets ( dtx: DisplayTx, viewlet: TxDisplayViewlet, client: TxOperations, - model: AttributeModel[] + model: AttributeModel[], + isOwn: boolean ): Promise<{ viewlet: TxDisplayViewlet, model: AttributeModel[] }> { if (dtx.collectionAttribute !== undefined && (dtx.txDocIds?.size ?? 0) > 1) { // Check if we have a class presenter we could have a pseudo viewlet based on class presenter. viewlet = await createPseudoViewlet(client, dtx, activity.string.CollectionUpdated, 'inline') } else if (dtx.tx._class === core.class.TxCreateDoc) { // Check if we have a class presenter we could have a pseudo viewlet based on class presenter. - viewlet = await createPseudoViewlet(client, dtx, activity.string.DocCreated) + viewlet = await createPseudoViewlet(client, dtx, isOwn ? activity.string.DocCreated : activity.string.DocAdded) } else if (dtx.tx._class === core.class.TxRemoveDoc) { viewlet = await createPseudoViewlet(client, dtx, activity.string.DocDeleted) } else if (dtx.tx._class === core.class.TxUpdateDoc || dtx.tx._class === core.class.TxMixin) {