diff --git a/packages/rocketchat-livechat/app/client/views/livechatWindow.js b/packages/rocketchat-livechat/app/client/views/livechatWindow.js index c4242d72039..2cd28637b5b 100644 --- a/packages/rocketchat-livechat/app/client/views/livechatWindow.js +++ b/packages/rocketchat-livechat/app/client/views/livechatWindow.js @@ -64,6 +64,17 @@ Template.livechatWindow.onCreated(function() { Session.set({sound: true}); + const defaultAppLanguage = () => { + let lng = window.navigator.userLanguage || window.navigator.language || 'en'; + let regexp = /([a-z]{2}-)([a-z]{2})/; + if (regexp.test(lng)) { + lng = lng.replace(regexp, function(match, ...parts) { + return parts[0] + parts[1].toUpperCase(); + }); + } + return lng; + }; + // get all needed live chat info for the user Meteor.call('livechat:getInitialData', visitor.getToken(), (err, result) => { if (err) { @@ -94,6 +105,8 @@ Template.livechatWindow.onCreated(function() { visitor.setRoom(result.room._id); } + TAPi18n.setLanguage((result.language || defaultAppLanguage()).split('-').shift()); + Triggers.setTriggers(result.triggers); Triggers.init(); diff --git a/packages/rocketchat-livechat/app/client/views/messages.html b/packages/rocketchat-livechat/app/client/views/messages.html index 08bbea2bcb3..15d8e58821b 100644 --- a/packages/rocketchat-livechat/app/client/views/messages.html +++ b/packages/rocketchat-livechat/app/client/views/messages.html @@ -8,7 +8,7 @@