diff --git a/app/livechat/client/views/app/livechatAppearance.html b/app/livechat/client/views/app/livechatAppearance.html index 10386eab516b3..774aae058c3cc 100644 --- a/app/livechat/client/views/app/livechatAppearance.html +++ b/app/livechat/client/views/app/livechatAppearance.html @@ -112,7 +112,7 @@

{{_ "Settings"}}

{{_ "Show_email_field"}}
- +
@@ -122,6 +122,10 @@

{{_ "Settings"}}

+
+ + +
diff --git a/app/livechat/client/views/app/livechatAppearance.js b/app/livechat/client/views/app/livechatAppearance.js index 1b5477ec1fedd..a102a396a4e02 100644 --- a/app/livechat/client/views/app/livechatAppearance.js +++ b/app/livechat/client/views/app/livechatAppearance.js @@ -84,6 +84,9 @@ Template.livechatAppearance.helpers({ conversationFinishedMessage() { return Template.instance().conversationFinishedMessage.get(); }, + conversationFinishedText() { + return Template.instance().conversationFinishedText.get(); + }, registrationFormEnabled() { if (Template.instance().registrationFormEnabled.get()) { return 'checked'; @@ -120,6 +123,7 @@ Template.livechatAppearance.onCreated(function() { this.colorOffline = new ReactiveVar(null); this.offlineEmail = new ReactiveVar(null); this.conversationFinishedMessage = new ReactiveVar(null); + this.conversationFinishedText = new ReactiveVar(null); this.registrationFormEnabled = new ReactiveVar(null); this.registrationFormNameFieldEnabled = new ReactiveVar(null); this.registrationFormEmailFieldEnabled = new ReactiveVar(null); @@ -173,6 +177,10 @@ Template.livechatAppearance.onCreated(function() { const setting = LivechatAppearance.findOne('Livechat_conversation_finished_message'); this.conversationFinishedMessage.set(setting && setting.value); }); + this.autorun(() => { + const setting = LivechatAppearance.findOne('Livechat_conversation_finished_text'); + this.conversationFinishedText.set(setting && setting.value); + }); this.autorun(() => { const setting = LivechatAppearance.findOne('Livechat_registration_form_message'); this.registrationFormMessage.set(setting && setting.value); @@ -238,6 +246,9 @@ Template.livechatAppearance.events({ const settingConversationFinishedMessage = LivechatAppearance.findOne('Livechat_conversation_finished_message'); instance.conversationFinishedMessage.set(settingConversationFinishedMessage && settingConversationFinishedMessage.value); + const settingConversationFinishedText = LivechatAppearance.findOne('Livechat_conversation_finished_text'); + instance.conversationFinishedText.set(settingConversationFinishedText && settingConversationFinishedText.value); + const settingRegistrationFormEnabled = LivechatAppearance.findOne('Livechat_registration_form'); instance.registrationFormEnabled.set(settingRegistrationFormEnabled && settingRegistrationFormEnabled.value); @@ -301,6 +312,10 @@ Template.livechatAppearance.events({ _id: 'Livechat_conversation_finished_message', value: s.trim(instance.conversationFinishedMessage.get()), }, + { + _id: 'Livechat_conversation_finished_text', + value: s.trim(instance.conversationFinishedText.get()), + }, { _id: 'Livechat_registration_form', value: instance.registrationFormEnabled.get(), diff --git a/app/livechat/server/api/lib/livechat.js b/app/livechat/server/api/lib/livechat.js index 302cd5ceae137..bc0d7f109dd0a 100644 --- a/app/livechat/server/api/lib/livechat.js +++ b/app/livechat/server/api/lib/livechat.js @@ -127,6 +127,7 @@ export function settings() { offlineSuccessMessage: initSettings.Livechat_offline_success_message, offlineUnavailableMessage: initSettings.Livechat_offline_form_unavailable, conversationFinishedMessage: initSettings.Livechat_conversation_finished_message, + conversationFinishedText: initSettings.Livechat_conversation_finished_text, transcriptMessage: initSettings.Livechat_transcript_message, registrationFormMessage: initSettings.Livechat_registration_form_message, dataProcessingConsentText: initSettings.Livechat_data_processing_consent_text, diff --git a/app/livechat/server/config.js b/app/livechat/server/config.js index 46c7f704ff28f..6e0c6904d11ef 100644 --- a/app/livechat/server/config.js +++ b/app/livechat/server/config.js @@ -103,6 +103,14 @@ Meteor.startup(function() { i18nLabel: 'Conversation_finished_message', }); + settings.add('Livechat_conversation_finished_text', '', { + type: 'string', + multiline: true, + group: 'Livechat', + public: true, + i18nLabel: 'Conversation_finished_text', + }); + settings.add('Livechat_registration_form', true, { type: 'boolean', group: 'Livechat', diff --git a/app/livechat/server/lib/Livechat.js b/app/livechat/server/lib/Livechat.js index 187311bc5271c..a46a05cd21d33 100644 --- a/app/livechat/server/lib/Livechat.js +++ b/app/livechat/server/lib/Livechat.js @@ -365,6 +365,7 @@ export const Livechat = { 'Livechat_fileupload_enabled', 'FileUpload_Enabled', 'Livechat_conversation_finished_message', + 'Livechat_conversation_finished_text', 'Livechat_name_field_registration_form', 'Livechat_email_field_registration_form', 'Livechat_registration_form_message', diff --git a/app/livechat/server/methods/getInitialData.js b/app/livechat/server/methods/getInitialData.js index b5627151ef2d6..9b7a2f22a7055 100644 --- a/app/livechat/server/methods/getInitialData.js +++ b/app/livechat/server/methods/getInitialData.js @@ -25,6 +25,7 @@ Meteor.methods({ videoCall: null, fileUpload: null, conversationFinishedMessage: null, + conversationFinishedText: null, nameFieldRegistrationForm: null, emailFieldRegistrationForm: null, registrationFormMessage: null, @@ -79,6 +80,7 @@ Meteor.methods({ info.transcript = initSettings.Livechat_enable_transcript; info.transcriptMessage = initSettings.Livechat_transcript_message; info.conversationFinishedMessage = initSettings.Livechat_conversation_finished_message; + info.conversationFinishedText = initSettings.Livechat_conversation_finished_text; info.nameFieldRegistrationForm = initSettings.Livechat_name_field_registration_form; info.emailFieldRegistrationForm = initSettings.Livechat_email_field_registration_form; info.registrationFormMessage = initSettings.Livechat_registration_form_message; diff --git a/app/livechat/server/methods/saveAppearance.js b/app/livechat/server/methods/saveAppearance.js index 07445c9672dce..99e57ce6ef2e7 100644 --- a/app/livechat/server/methods/saveAppearance.js +++ b/app/livechat/server/methods/saveAppearance.js @@ -22,6 +22,7 @@ Meteor.methods({ 'Livechat_offline_title_color', 'Livechat_offline_email', 'Livechat_conversation_finished_message', + 'Livechat_conversation_finished_text', 'Livechat_registration_form', 'Livechat_name_field_registration_form', 'Livechat_email_field_registration_form', diff --git a/app/livechat/server/publications/livechatAppearance.js b/app/livechat/server/publications/livechatAppearance.js index e9bc5ff1ef5ac..518aa94680e16 100644 --- a/app/livechat/server/publications/livechatAppearance.js +++ b/app/livechat/server/publications/livechatAppearance.js @@ -27,6 +27,7 @@ Meteor.publish('livechat:appearance', function() { 'Livechat_offline_title_color', 'Livechat_offline_email', 'Livechat_conversation_finished_message', + 'Livechat_conversation_finished_text', 'Livechat_registration_form', 'Livechat_name_field_registration_form', 'Livechat_email_field_registration_form', diff --git a/packages/rocketchat-i18n/i18n/en.i18n.json b/packages/rocketchat-i18n/i18n/en.i18n.json index 8123d31a52107..ae3bf060860c7 100644 --- a/packages/rocketchat-i18n/i18n/en.i18n.json +++ b/packages/rocketchat-i18n/i18n/en.i18n.json @@ -686,7 +686,9 @@ "Conversation": "Conversation", "Conversations": "Conversations", "Conversation_closed": "Conversation closed: __comment__.", + "Conversation_finished": "Conversation Finished", "Conversation_finished_message": "Conversation Finished Message", + "Conversation_finished_text": "Conversation Finished Text", "Conversations_per_day": "Conversations per Day", "conversation_with_s": "the conversation with %s", "Convert_Ascii_Emojis": "Convert ASCII to Emoji", @@ -3423,4 +3425,4 @@ "Your_question": "Your question", "Your_server_link": "Your server link", "Your_workspace_is_ready": "Your workspace is ready to use šŸŽ‰" -} \ No newline at end of file +} diff --git a/packages/rocketchat-i18n/i18n/pt-BR.i18n.json b/packages/rocketchat-i18n/i18n/pt-BR.i18n.json index 12c6b67e41d94..e7c4b9da5cffb 100644 --- a/packages/rocketchat-i18n/i18n/pt-BR.i18n.json +++ b/packages/rocketchat-i18n/i18n/pt-BR.i18n.json @@ -645,7 +645,9 @@ "Conversation": "Conversa", "Conversations": "Conversas", "Conversation_closed": "Chat encerrado: __comment__.", - "Conversation_finished_message": "Mensagem finalizada da conversação", + "Conversation_finished": "Conversa concluĆ­da", + "Conversation_finished_message": "Mensagem de conversa concluĆ­da", + "Conversation_finished_text": "Texto de conversa concluĆ­da", "Conversations_per_day": "Conversas por dia", "conversation_with_s": "a conversa com %s", "Convert_Ascii_Emojis": "Converter ASCII para Emoji", @@ -3235,4 +3237,4 @@ "Your_question": "A sua pergunta", "Your_server_link": "O link do seu servidor", "Your_workspace_is_ready": "O seu espaƧo de trabalho estĆ” pronto a usar šŸŽ‰" -} \ No newline at end of file +}