diff --git a/src/components/views/messages/RoomAvatarEvent.js b/src/components/views/messages/RoomAvatarEvent.js index 453394249f..995d5f8531 100644 --- a/src/components/views/messages/RoomAvatarEvent.js +++ b/src/components/views/messages/RoomAvatarEvent.js @@ -70,9 +70,9 @@ module.exports = React.createClass({ // it sucks that _tJsx doesn't support normal _t substitutions :(( return (
- { _tJsx('$senderDisplayName changed the room avatar to ', + { _tJsx('%(senderDisplayName)s changed the room avatar to ', [ - /\$senderDisplayName/, + /%\(senderDisplayName\)s/, //, ], [ diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 8a0c2ebe9c..88700c8fa2 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -728,7 +728,7 @@ "WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and device %(deviceId)s is \"%(fprint)s\" which does not match the provided key \"%(fingerprint)s\". This could mean your communications are being intercepted!": "WARNUNG: SCHLÜSSEL-VERIFIZIERUNG FEHLGESCHLAGEN! Der Signatur-Schlüssel für %(userId)s und das Gerät %(deviceId)s ist \"%(fprint)s\", welcher nicht mit dem bereitgestellten Schlüssel \"%(fingerprint)s\" übereinstimmt. Dies kann bedeuten, dass deine Kommunikation abgehört wird!", "You have disabled URL previews by default.": "Du hast die URL-Vorschau standardmäßig deaktiviert.", "You have enabled URL previews by default.": "Du hast die URL-Vorschau standardmäßig aktiviert.", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName hat das Raum-Bild geändert zu ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s hat das Raum-Bild geändert zu ", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s hat das Raum-Bild für %(roomName)s geändert", "Hide removed messages": "Gelöschte Nachrichten verbergen", "Start new chat": "Neuen Chat starten", diff --git a/src/i18n/strings/el.json b/src/i18n/strings/el.json index 99ae411d94..06009b0b3b 100644 --- a/src/i18n/strings/el.json +++ b/src/i18n/strings/el.json @@ -639,7 +639,7 @@ "Disable URL previews by default for participants in this room": "Απενεργοποίηση της προεπισκόπησης συνδέσμων για όλους τους συμμετέχοντες στο δωμάτιο", "Disable URL previews for this room (affects only you)": "Απενεργοποίηση της προεπισκόπησης συνδέσμων για αυτό το δωμάτιο (επηρεάζει μόνο εσάς)", " (unsupported)": " (μη υποστηριζόμενο)", - "$senderDisplayName changed the room avatar to ": "Ο $senderDisplayName άλλαξε την εικόνα του δωματίου σε ", + "%(senderDisplayName)s changed the room avatar to ": "Ο %(senderDisplayName)s άλλαξε την εικόνα του δωματίου σε ", "Missing Media Permissions, click here to request.": "Λείπουν τα δικαιώματα πολύμεσων, κάντε κλικ για να ζητήσετε.", "You may need to manually permit Riot to access your microphone/webcam": "Μπορεί να χρειαστεί να ορίσετε χειροκίνητα την πρόσβαση του Riot στο μικρόφωνο/κάμερα", "Can't connect to homeserver - please check your connectivity, ensure your homeserver's SSL certificate is trusted, and that a browser extension is not blocking requests.": "Δεν είναι δυνατή η σύνδεση στον διακομιστή - παρακαλούμε ελέγξτε την συνδεσιμότητα, βεβαιωθείτε ότι το πιστοποιητικό SSL του διακομιστή είναι έμπιστο και ότι κάποιο πρόσθετο περιηγητή δεν αποτρέπει τα αιτήματα.", diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index c8c4b8f14d..8998b379c2 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -788,7 +788,7 @@ "Start chatting": "Start chatting", "Start Chatting": "Start Chatting", "Click on the button below to start chatting!": "Click on the button below to start chatting!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName changed the room avatar to ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s changed the room avatar to ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s removed the room avatar.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s changed the avatar for %(roomName)s", "Username available": "Username available", diff --git a/src/i18n/strings/en_US.json b/src/i18n/strings/en_US.json index 5236e959d4..6161728fb1 100644 --- a/src/i18n/strings/en_US.json +++ b/src/i18n/strings/en_US.json @@ -705,7 +705,7 @@ "Idle": "Idle", "Offline": "Offline", "Disable URL previews for this room (affects only you)": "Disable URL previews for this room (affects only you)", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName changed the room avatar to ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s changed the room avatar to ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s removed the room avatar.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s changed the avatar for %(roomName)s", "Active call (%(roomName)s)": "Active call (%(roomName)s)", diff --git a/src/i18n/strings/eu.json b/src/i18n/strings/eu.json index 234e888f7c..2ead47c62b 100644 --- a/src/i18n/strings/eu.json +++ b/src/i18n/strings/eu.json @@ -736,7 +736,7 @@ "Start chatting": "Hasi txateatzen", "Start Chatting": "Hasi txateatzen", "Click on the button below to start chatting!": "Egin klik beheko botoian txateatzen hasteko!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName erabiltzaileak gelaren abatarra aldatu du beste honetara: ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s erabiltzaileak gelaren abatarra aldatu du beste honetara: ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s erabiltzaileak gelaren abatarra ezabatu du.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s erabiltzaileak %(roomName)s gelaren abatarra aldatu du", "Username available": "Erabiltzaile-izena eskuragarri dago", diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index d07a162f8d..3a45793b7c 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -637,7 +637,7 @@ "for %(amount)sm": "depuis %(amount)sm", "for %(amount)sh": "depuis %(amount)sh", "for %(amount)sd": "depuis %(amount)sj", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName a changé l’avatar du salon en ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s a changé l’avatar du salon en ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s a supprimé l'avatar du salon.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s a changé l’avatar de %(roomName)s", "Device already verified!": "Appareil déjà vérifié !", diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index 38f596b8e9..f7a972b983 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -723,7 +723,7 @@ "Start chatting": "Csevegés indítása", "Start Chatting": "Csevegés indítása", "Click on the button below to start chatting!": "Csevegés indításához kattints a gombra alább!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName megváltoztatta a szoba avatar képét: ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s megváltoztatta a szoba avatar képét: ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s törölte a szoba avatar képét.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s megváltoztatta %(roomName)s szoba avatar képét", "Username available": "Szabad felhasználói név", diff --git a/src/i18n/strings/ko.json b/src/i18n/strings/ko.json index 307ee762ef..98a07e629d 100644 --- a/src/i18n/strings/ko.json +++ b/src/i18n/strings/ko.json @@ -743,7 +743,7 @@ "Start chatting": "이야기하기", "Start Chatting": "이야기하기", "Click on the button below to start chatting!": "이야기하려면 아래 버튼을 누르세요!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName님이 방 아바타를 로 바꾸셨어요", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s님이 방 아바타를 로 바꾸셨어요", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s님이 방 아바타를 지우셨어요.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s가 %(roomName)s 방의 아바타를 바꾸셨어요", "Username available": "쓸 수 있는 사용자 이름", diff --git a/src/i18n/strings/lv.json b/src/i18n/strings/lv.json index 0a5e999015..164b6226d9 100644 --- a/src/i18n/strings/lv.json +++ b/src/i18n/strings/lv.json @@ -619,7 +619,7 @@ "Dec": "Dec.", "Set a display name:": "Iestatīt redzamo vārdu:", "This image cannot be displayed.": "Šo attēlu nav iespējams parādīt.", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName nomainīja istabas attēlu uz ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s nomainīja istabas attēlu uz ", "Upload an avatar:": "Augšuplādē profila attēlu:", "This server does not support authentication with a phone number.": "Šis serveris neatbalsta autentifikāciju pēc telefona numura.", "Missing password.": "Trūkst parole.", diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index 38ca640fc8..c12a2ad81c 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -746,7 +746,7 @@ "Start chatting": "Start met praten", "Start Chatting": "Start Met Praten", "Click on the button below to start chatting!": "Klik op de knop hieronder om te starten met praten!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName heeft de ruimte avatar aangepast naar ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s heeft de ruimte avatar aangepast naar ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s heeft de ruimte avatar verwijderd.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s veranderde de avatar voor %(roomName)s", "Username available": "Gebruikersnaam beschikbaar", diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 0b11e26c44..66e7b2aa28 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -771,7 +771,7 @@ "for %(amount)sd": "%(amount)s dni", "Idle": "Bezczynny", "Check for update": "Sprawdź aktualizacje", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName zmienił awatar pokoju na ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s zmienił awatar pokoju na ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s usunął awatar pokoju.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s zmienił awatar %(roomName)s", "This will be your account name on the homeserver, or you can pick a different server.": "To będzie twoja nazwa konta na serwerze domowym; możesz też wybrać inny serwer.", diff --git a/src/i18n/strings/pt.json b/src/i18n/strings/pt.json index d05c7697af..3482851ebe 100644 --- a/src/i18n/strings/pt.json +++ b/src/i18n/strings/pt.json @@ -699,7 +699,7 @@ "for %(amount)sd": "por %(amount)sd", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s removeu a imagem da sala.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s alterou a imagem da sala %(roomName)s", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName alterou a imagem da sala para ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s alterou a imagem da sala para ", "Missing Media Permissions, click here to request.": "Faltam permissões para uso de mídia no seu computador. Clique aqui para solicitá-las.", "No Microphones detected": "Não foi detetado nenhum microfone", "No Webcams detected": "Não foi detetada nenhuma Webcam", diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 109c0bb6c2..691cf8d9bf 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -696,7 +696,7 @@ "for %(amount)sd": "por %(amount)sd", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s removeu a imagem da sala.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s alterou a imagem da sala %(roomName)s", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName alterou a imagem da sala para ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s alterou a imagem da sala para ", "Missing Media Permissions, click here to request.": "Faltam permissões para uso de mídia no seu computador. Clique aqui para solicitá-las.", "No Microphones detected": "Não foi detectado nenhum microfone", "No Webcams detected": "Não foi detectada nenhuma Webcam", diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index 46d605c5a0..801f1e41d6 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -705,7 +705,7 @@ "Idle": "Неактивен", "Offline": "Не в сети", "Disable URL previews for this room (affects only you)": "Отключить предпросмотр URL-адресов для этой комнаты (влияет только на вас)", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName сменил аватар комнаты на ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s сменил аватар комнаты на ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s удалил аватар комнаты.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s сменил аватар для %(roomName)s", "Create new room": "Создать новую комнату", diff --git a/src/i18n/strings/tr.json b/src/i18n/strings/tr.json index 98be1c9a64..fdc06f741c 100644 --- a/src/i18n/strings/tr.json +++ b/src/i18n/strings/tr.json @@ -738,7 +738,7 @@ "Start chatting": "Sohbeti başlat", "Start Chatting": "Sohbeti Başlat", "Click on the button below to start chatting!": "Sohbeti başlatmak için aşağıdaki butona tıklayın!", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName odanın avatarını olarak çevirdi", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s odanın avatarını olarak çevirdi", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s odanın avatarını kaldırdı.", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s %(roomName)s için avatarı değiştirdi", "Username available": "Kullanıcı ismi uygun", diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 83aadd5178..35e18b9793 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -228,7 +228,7 @@ "Idle": "閒置", "Offline": "下線", "Disable URL previews for this room (affects only you)": "在這個房間禁止URL預覽(只影響你)", - "$senderDisplayName changed the room avatar to ": "$senderDisplayName 更改了聊天室的圖像為 ", + "%(senderDisplayName)s changed the room avatar to ": "%(senderDisplayName)s 更改了聊天室的圖像為 ", "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s 移除了聊天室圖片。", "%(senderDisplayName)s changed the avatar for %(roomName)s": "%(senderDisplayName)s 更改了聊天室 %(roomName)s 圖像", "Cancel": "取消", diff --git a/src/languageHandler.js b/src/languageHandler.js index b2fc65c46d..a90b78c40e 100644 --- a/src/languageHandler.js +++ b/src/languageHandler.js @@ -109,8 +109,9 @@ export function _tJsx(jsxText, patterns, subs) { } // The translation returns text so there's no XSS vector here (no unsafe HTML, no code execution) - const tJsxText = _t(jsxText); + const tJsxText = _t(jsxText, {interpolate: false}); const output = [tJsxText]; + for (let i = 0; i < patterns.length; i++) { // convert the last element in 'output' into 3 elements (pre-text, sub function, post-text). // Rinse and repeat for other patterns (using post-text).