From 935974642097656f2ce2d90c060bbace6da3d4e7 Mon Sep 17 00:00:00 2001 From: MayTekayaa Date: Fri, 11 Aug 2023 14:23:28 +0100 Subject: [PATCH] MEED-2071 Add some adjustments --- .../locale/addon/Kudos_en.properties | 1 + .../locale/addon/Kudos_fr.properties | 1 + .../src/main/webapp/vue-app/js/Kudos.js | 8 ++ .../vue-app/kudos/components/KudosAPI.vue | 1 + .../vue-app/kudos/components/KudosApp.vue | 95 +++++++++++++++---- .../kudos/components/SendKudosComposer.vue | 37 ++++++++ .../webapp/vue-app/kudos/initComponents.js | 2 + 7 files changed, 126 insertions(+), 19 deletions(-) create mode 100644 kudos-webapps/src/main/webapp/vue-app/kudos/components/SendKudosComposer.vue diff --git a/kudos-services/src/main/resources/locale/addon/Kudos_en.properties b/kudos-services/src/main/resources/locale/addon/Kudos_en.properties index 09254c73e..9020e7e9c 100644 --- a/kudos-services/src/main/resources/locale/addon/Kudos_en.properties +++ b/kudos-services/src/main/resources/locale/addon/Kudos_en.properties @@ -31,6 +31,7 @@ exoplatform.kudos.receiver.searchPlaceholder=Start typing to search exoplatform.kudos.receiver.placeholder=Add Receiver exoplatform.kudos.receiver.noDataLabel=Not found exoplatform.kudos.receiver.noDataLabelInSpace=Not found in space +exoplatform.kudos.receiver.title=Kudos Receiver exoplatform.kudos.error.errorSavingKudosSettings=Error saving Kudos settings. Please try again. If the problem remains, please contact your administrator exoplatform.kudos.error.errorSendingKudos=Error sending kudos. Please try again. If the problem remains, please contact your administrator diff --git a/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties b/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties index 806737d63..7a60fb269 100644 --- a/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties +++ b/kudos-services/src/main/resources/locale/addon/Kudos_fr.properties @@ -31,6 +31,7 @@ exoplatform.kudos.receiver.searchPlaceholder=Commencez \u00E0 taper pour cherche exoplatform.kudos.receiver.placeholder=Ajouter un destinataire exoplatform.kudos.receiver.noDataLabel=Non trouv\u00E9 exoplatform.kudos.receiver.noDataLabelInSpace=Non trouv\u00E9 dans l'espace +exoplatform.kudos.receiver.title=Le destinataire du Kudos exoplatform.kudos.error.errorSavingKudosSettings=Erreur lors de l'enregistrement des param\u00E8tres Kudos. Essayez \u00E0 nouveau. Si le probl\u00E8me persiste, veuillez contacter votre administrateur exoplatform.kudos.error.errorSendingKudos=Erreur lors de l'envoi du kudos. Essayez \u00E0 nouveau et si le probl\u00E8me persiste, veuillez contacter votre administrateur diff --git a/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js b/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js index b958e9335..991d58ad8 100644 --- a/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js +++ b/kudos-webapps/src/main/webapp/vue-app/js/Kudos.js @@ -219,6 +219,14 @@ export function registerOverviewExtension() { }); } +export function registerComposerExtension() { + extensionRegistry.registerComponent('ComposerAction', 'composer-action-item', { + id: 'sendKudosButton', + vueComponent: Vue.options.components['send-kudos-composer'], + rank: 1, + }); +} + export function registerFavoriteExtensions(title) { extensionRegistry.registerExtension('ActivityFavoriteIcon', 'activity-favorite-icon-extensions', { id: 'favorite-kudos', diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue index e4dcd134c..d7baf257b 100644 --- a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosAPI.vue @@ -7,6 +7,7 @@ export default { this.$kudosService.registerExternalExtensions(this.$t('exoplatform.kudos.title.sendAKudos')); this.$kudosService.registerFavoriteExtensions(this.$t('exoplatform.kudos.label.to')); this.$kudosService.registerOverviewExtension(); + this.$kudosService.registerComposerExtension(); this.$kudosService.registerActivityActionExtension(); this.$kudosService.registerActivityReactionTabs(); document.addEventListener('display-activity-details', this.getActivityInformations); diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue index 9570d64ac..801b9663c 100644 --- a/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/components/KudosApp.vue @@ -27,11 +27,9 @@ ref="activityKudosForm" class="flex mx-4">
-
- {{ $t('exoplatform.kudos.content.to') }} -
+
+
+ {{ $t('exoplatform.kudos.receiver.title') }}
-
-
+
+
+ {{ $t('exoplatform.kudos.content.to') }} +
+ +
+ +
+
+
{{ $t('exoplatform.kudos.choose.audience') }}
@@ -70,7 +88,41 @@
- {{ $t('exoplatform.kudos.title.message') }} + + + + + + + + + + + + + {{ $t('exoplatform.kudos.title.message') }}
{ if (receiverDetails && receiverDetails.id && receiverDetails.type) { receiverDetails.isUserType = receiverDetails.type === 'organization' || receiverDetails.type === 'user'; - if (!receiverDetails.isUserType || receiverDetails.id !== eXo.env.portal.userName) { + if (!receiverDetails.isUserType || receiverDetails.id !== this.username) { if (this.isLinkedKudos) { this.selectedReceiver = { receiverId: receiverDetails.id, @@ -410,7 +467,7 @@ export default { if ( this.remainingKudos > 0 ) { this.loading = true; this.$nextTick(() => { - + this.readOnlySpace = event?.detail?.readOnlySpace; this.entityType = event && event.detail && event.detail.type; this.entityId = event && event.detail && event.detail.id; this.metadataObjectId = null; @@ -448,7 +505,7 @@ export default { receiverType: this.receiverType, receiverId: this.receiverId, message: this.kudosMessage, - spacePrettyName: this.audience?.remoteId + spacePrettyName: this.audience?.remoteId || this.spaceId }; sendKudos(kudos) .then(kudosSent => { diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/components/SendKudosComposer.vue b/kudos-webapps/src/main/webapp/vue-app/kudos/components/SendKudosComposer.vue new file mode 100644 index 000000000..2f5be6998 --- /dev/null +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/components/SendKudosComposer.vue @@ -0,0 +1,37 @@ + + \ No newline at end of file diff --git a/kudos-webapps/src/main/webapp/vue-app/kudos/initComponents.js b/kudos-webapps/src/main/webapp/vue-app/kudos/initComponents.js index bef708b15..caca834ec 100644 --- a/kudos-webapps/src/main/webapp/vue-app/kudos/initComponents.js +++ b/kudos-webapps/src/main/webapp/vue-app/kudos/initComponents.js @@ -2,6 +2,7 @@ import KudosIdentityLink from './components/KudosIdentityLink.vue'; import KudosAPI from './components/KudosAPI.vue'; import KudosApp from './components/KudosApp.vue'; import KudosButton from '../kudos/components/KudosButton.vue'; +import SendKudosComposer from '../kudos/components/SendKudosComposer.vue'; import PopoverKudosButton from '../kudos/components/PopoverKudosButton.vue'; import ActivityKudosReactionItem from './components/ActivityKudosReactionItem.vue'; import ActivityKudosReactionList from './components/ActivityKudosReactionList.vue'; @@ -26,6 +27,7 @@ const components = { 'activity-kudos-reaction-count': ActivityKudosReactionCount, 'kudos-overview': KudosOverview, 'kudos-overview-card': KudosOverviewCard, + 'send-kudos-composer': SendKudosComposer, }; for (const key in components) {