From a98792b05e134c07a365c7a7bed145ec8eed07b4 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 24 May 2017 15:52:08 +0100 Subject: [PATCH 001/105] auto-launch support, ux =checkbox in UserSettings[Electron] settings are sorta generic, probably reusable for proxy settings Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- electron_app/package.json | 1 + electron_app/src/electron-main.js | 39 +++++++++++++++++++++++++ src/vector/platform/ElectronPlatform.js | 2 ++ 3 files changed, 42 insertions(+) diff --git a/electron_app/package.json b/electron_app/package.json index df9c3bd2..8da35d84 100644 --- a/electron_app/package.json +++ b/electron_app/package.json @@ -6,6 +6,7 @@ "description": "A feature-rich client for Matrix.org", "author": "Vector Creations Ltd.", "dependencies": { + "auto-launch": "^5.0.1", "electron-window-state": "^4.1.0" } } diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index ab844bd3..6b63d741 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -24,6 +24,7 @@ const check_squirrel_hooks = require('./squirrelhooks'); if (check_squirrel_hooks()) return; const electron = require('electron'); +const AutoLaunch = require('auto-launch'); const url = require('url'); const tray = require('./tray'); @@ -202,6 +203,44 @@ if (shouldQuit) { electron.app.quit() } + +const launcher = new AutoLaunch({ + name: vectorConfig.brand || 'Riot', + isHidden: true, +}); + +const settings = { + 'auto-launch': { + get: launcher.isEnabled, + set: function(bool) { + if (bool) { + return launcher.enable(); + } else { + return launcher.disable(); + } + }, + }, +}; + +electron.ipcMain.on('settings_get', async function(ev) { + const data = {}; + + try { + await Promise.all(Object.keys(settings).map(async function (setting) { + data[setting] = await settings[setting].get(); + })); + + ev.sender.send('settings', data); + } catch(e) { console.error(e); } +}); + +electron.ipcMain.on('settings_set', function(ev, key, value) { + console.log(key, value); + if (settings[key] && settings[key].set) { + settings[key].set(value); + } +}); + electron.app.on('ready', () => { if (vectorConfig.update_base_url) { console.log("Starting auto update with base URL: " + vectorConfig.update_base_url); diff --git a/src/vector/platform/ElectronPlatform.js b/src/vector/platform/ElectronPlatform.js index 5710e66e..f52a5ddc 100644 --- a/src/vector/platform/ElectronPlatform.js +++ b/src/vector/platform/ElectronPlatform.js @@ -138,6 +138,8 @@ export default class ElectronPlatform extends VectorBasePlatform { return null; } + isElectron(): boolean { return true; } + requestNotificationPermission(): Promise { return q('granted'); } From 52a8039eb3c8af0bfe037a9d0fc3e46a693037df Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 25 May 2017 01:21:11 +0100 Subject: [PATCH 002/105] add more generic class for links/highlights within UserSettings Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .../vector/css/matrix-react-sdk/structures/_UserSettings.scss | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss b/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss index fe60aacb..b303a86a 100644 --- a/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss +++ b/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss @@ -227,7 +227,8 @@ input.mx_UserSettings_phoneNumberField { display: none; } -.mx_UserSettings_advanced_spoiler { +.mx_UserSettings_advanced_spoiler, +.mx_UserSettings_link { cursor: pointer; color: $accent-color; word-break: break-all; From 0fb6a305a316c39f32259aea5434336c864a7d9c Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 26 May 2017 09:45:30 +0100 Subject: [PATCH 003/105] uber basic multi-profile support for electron app Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- electron_app/package.json | 3 ++- electron_app/src/electron-main.js | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/electron_app/package.json b/electron_app/package.json index df9c3bd2..e001f51d 100644 --- a/electron_app/package.json +++ b/electron_app/package.json @@ -6,6 +6,7 @@ "description": "A feature-rich client for Matrix.org", "author": "Vector Creations Ltd.", "dependencies": { - "electron-window-state": "^4.1.0" + "electron-window-state": "^4.1.0", + "minimist": "^1.2.0" } } diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index 26f8f972..9170d4b4 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -23,6 +23,7 @@ limitations under the License. const check_squirrel_hooks = require('./squirrelhooks'); if (check_squirrel_hooks()) return; +const argv = require('minimist')(process.argv); const electron = require('electron'); const tray = require('./tray'); @@ -32,6 +33,10 @@ const webContentsHandler = require('./webcontents-handler'); const windowStateKeeper = require('electron-window-state'); +if (argv.profile) { + electron.app.setPath('userData', `${electron.app.getPath('userData')}-${argv.profile}`); +} + let vectorConfig = {}; try { vectorConfig = require('../../webapp/config.json'); @@ -191,7 +196,7 @@ electron.app.on('ready', () => { brand: vectorConfig.brand || 'Riot' }); - if (!process.argv.includes('--hidden')) { + if (!argv.hidden) { mainWindow.once('ready-to-show', () => { mainWindow.show(); }); From e63baf62c44e54a6704597570067f8380989b6e3 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Fri, 26 May 2017 09:49:23 +0100 Subject: [PATCH 004/105] quit -> exit as screen is not accessible in alt instance when using makeSingleInstance which leads to a weird error Unhandled exception { Error: Cannot find module '../screen' Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- electron_app/src/electron-main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index 9170d4b4..0df1662b 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -156,7 +156,7 @@ const shouldQuit = electron.app.makeSingleInstance((commandLine, workingDirector if (shouldQuit) { console.log("Other instance detected: exiting"); - electron.app.quit() + electron.app.exit(); } electron.app.on('ready', () => { From 9c25aab5095f8ec9272fa0a14fe4138ff26c2585 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 29 May 2017 22:12:36 +0100 Subject: [PATCH 005/105] Fix bad merge (3993 before 4021 broke things) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- electron_app/src/electron-main.js | 41 ------------------------------- 1 file changed, 41 deletions(-) diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index 03c3d07d..d739a8d0 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -46,47 +46,6 @@ const INITIAL_UPDATE_DELAY_MS = 30 * 1000; let mainWindow = null; let appQuitting = false; -function safeOpenURL(target) { - // openExternal passes the target to open/start/xdg-open, - // so put fairly stringent limits on what can be opened - // (for instance, open /bin/sh does indeed open a terminal - // with a shell, albeit with no arguments) - const parsedUrl = url.parse(target); - if (PERMITTED_URL_SCHEMES.indexOf(parsedUrl.protocol) > -1) { - // explicitly use the URL re-assembled by the url library, - // so we know the url parser has understood all the parts - // of the input string - const newTarget = url.format(parsedUrl); - electron.shell.openExternal(newTarget); - } -} - -function onWindowOrNavigate(ev, target) { - // always prevent the default: if something goes wrong, - // we don't want to end up opening it in the electron - // app, as we could end up opening any sort of random - // url in a window that has node scripting access. - ev.preventDefault(); - safeOpenURL(target); -} - -function onLinkContextMenu(ev, params) { - const popupMenu = new electron.Menu(); - - popupMenu.append(new electron.MenuItem({ - label: params.linkURL, - click() { safeOpenURL(params.linkURL); }, - })); - - popupMenu.append(new electron.MenuItem({ - label: 'Copy Link Address', - click() { electron.clipboard.writeText(params.linkURL); }, - })); - - popupMenu.popup(); - ev.preventDefault(); -} - function installUpdate() { // for some reason, quitAndInstall does not fire the // before-quit event, so we need to set the flag here. From b27600adbe0f186a22a94e6c49e72a1f07ffbf10 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 May 2017 10:53:01 +0100 Subject: [PATCH 006/105] Improve for Mac - Tested on 10.10.5 --- electron_app/src/electron-main.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index d739a8d0..92b59304 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -173,6 +173,9 @@ if (shouldQuit) { const launcher = new AutoLaunch({ name: vectorConfig.brand || 'Riot', isHidden: true, + mac: { + useLaunchAgent: true, + }, }); const settings = { From c54e2a30b6a9493a83ce3ce98d46f2aab745bab1 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 May 2017 12:33:32 +0100 Subject: [PATCH 007/105] explicitly hide because setApplicationMenu on Linux otherwise shows... https://github.com/electron/electron/issues/9621 Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- electron_app/src/electron-main.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/electron_app/src/electron-main.js b/electron_app/src/electron-main.js index d739a8d0..cef16f21 100644 --- a/electron_app/src/electron-main.js +++ b/electron_app/src/electron-main.js @@ -236,6 +236,10 @@ electron.app.on('ready', () => { mainWindow.loadURL(`file://${__dirname}/../../webapp/index.html`); electron.Menu.setApplicationMenu(vectorMenu); + // explicitly hide because setApplicationMenu on Linux otherwise shows... + // https://github.com/electron/electron/issues/9621 + mainWindow.hide(); + // Create trayIcon icon tray.create(mainWindow, { icon_path: iconPath, From 0e96968c4eaed192bf197ee62a8597747c939797 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Tue, 30 May 2017 12:35:57 +0100 Subject: [PATCH 008/105] explicitly call install:electron in case electron-builder is silly (which has hit me once) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 29b5beee..951a9fc5 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "build:compile": "npm run reskindex && babel --source-maps -d lib src", "build:bundle": "cross-env NODE_ENV=production webpack -p --progress", "build:bundle:dev": "webpack --optimize-occurence-order --progress", - "build:electron": "npm run clean && npm run build && build -wml --ia32 --x64", + "build:electron": "npm run clean && npm run build && npm run install:electron && build -wml --ia32 --x64", "build": "npm run reskindex && npm run build:res && npm run build:bundle", "build:dev": "npm run reskindex && npm run build:res && npm run build:bundle:dev", "dist": "scripts/package.sh", From 79b1031e39281d02a8b362c28e8d505b6592d764 Mon Sep 17 00:00:00 2001 From: Bamstam Date: Mon, 29 May 2017 17:37:50 +0000 Subject: [PATCH 009/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index f9deef5b..b732dfcd 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -11,7 +11,7 @@ "Create new room": "Neuen Raum erstellen", "Settings": "Einstellungen", "powered by Matrix": "basierend auf Matrix", - "Custom Server Options": "Optionen für eigenen Server", + "Custom Server Options": "Erweiterte Server-Optionen", "Dismiss": "ausblenden", "Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server", "The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen", From 656824955849da81972fea5a01b9292806a27f28 Mon Sep 17 00:00:00 2001 From: Bamstam Date: Mon, 29 May 2017 17:37:50 +0000 Subject: [PATCH 010/105] Translated using Weblate (German) Currently translated at 99.1% (119 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index b732dfcd..54eeff51 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -12,7 +12,7 @@ "Settings": "Einstellungen", "powered by Matrix": "basierend auf Matrix", "Custom Server Options": "Erweiterte Server-Optionen", - "Dismiss": "ausblenden", + "Dismiss": "", "Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server", "The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen", "Directory": "Raum Verzeichnis", From e5009a09327f5ed963823d89dc1387523919251d Mon Sep 17 00:00:00 2001 From: Bamstam Date: Mon, 29 May 2017 17:37:50 +0000 Subject: [PATCH 011/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 54eeff51..9a1eba96 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -12,7 +12,7 @@ "Settings": "Einstellungen", "powered by Matrix": "basierend auf Matrix", "Custom Server Options": "Erweiterte Server-Optionen", - "Dismiss": "", + "Dismiss": "Ablehnen", "Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server", "The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen", "Directory": "Raum Verzeichnis", From eaaca91ba24bc54a8594bef6a689e2e261e8ae31 Mon Sep 17 00:00:00 2001 From: Krombel Date: Tue, 30 May 2017 14:54:52 +0000 Subject: [PATCH 012/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 9a1eba96..f93c5f62 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -10,7 +10,7 @@ "Room directory": "Raum-Verzeichnis", "Create new room": "Neuen Raum erstellen", "Settings": "Einstellungen", - "powered by Matrix": "basierend auf Matrix", + "powered by Matrix": "betrieben mit Matrix", "Custom Server Options": "Erweiterte Server-Optionen", "Dismiss": "Ablehnen", "Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server", From 2199fd7959b15d124934893b2c4aec0535eb962c Mon Sep 17 00:00:00 2001 From: Bamstam Date: Tue, 30 May 2017 15:35:17 +0000 Subject: [PATCH 013/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index f93c5f62..05d9542b 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -99,7 +99,7 @@ "Redact": "Redaktionell entfernen", "Remove %(name)s from the directory?": "Soll der Raum %(name)s aus dem Verzeichnis entfernt werden?", "remove %(name)s from the directory": "entferne %(name)s aus dem Verzeichnis", - "Resend": "Erneut Senden", + "Resend": "Erneut senden", "Source URL": "Quell-URL", "Unable to look up room ID from server": "Es ist nicht möglich, die Raum-ID auf dem Server nachzuschlagen", "Unhide Preview": "Vorschau wieder anzeigen", From bef8e3ba426736444b3c76e675da34f0c29b2244 Mon Sep 17 00:00:00 2001 From: Bamstam Date: Tue, 30 May 2017 16:58:56 +0000 Subject: [PATCH 014/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 05d9542b..a26f352e 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -45,7 +45,7 @@ "Failed to add tag ": "Konnte Tag nicht hinzufügen ", "Failed to change settings": "Einstellungen konnten nicht geändert werden", "Failed to update keywords": "Konnte Suchbegriff nicht aktualisieren", - "Failed to get public room list": "Konnte keine öffentliche Raumliste laden", + "Failed to get public room list": "Die Liste der öffentlichen Räume konnte nicht geladen werden", "Failed to join the room": "Fehler beim Betreten des Raumes", "Failed to remove tag ": "Konnte Tag nicht entfernen ", "Failed to set Direct Message status of room": "Konnte den direkten Benachrichtigungsstatus nicht setzen", @@ -54,7 +54,7 @@ "Forget": "Lösche", "from the directory": "aus dem Verzeichnis", " from room": " aus dem Raum", - "Guest users can't invite users. Please register to invite": "Gastnutzer können keine Nutzer einladen. Bitte registriere dich um Nutzer einzuladen", + "Guest users can't invite users. Please register to invite": "Gastnutzer können keine Nutzer einladen. Bitte registriere dich, um Nutzer einzuladen", "Keywords": "Schlüsselwörter", "Leave": "Verlassen", "Low Priority": "Niedrige Priorität", From 84661ee54444b35e6cb6aa38b1b4802979d92823 Mon Sep 17 00:00:00 2001 From: Bamstam Date: Tue, 30 May 2017 17:15:43 +0000 Subject: [PATCH 015/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index a26f352e..c13504a4 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -23,7 +23,7 @@ "Guests can join": "Gäste können beitreten", "You are not receiving desktop notifications": "Du erhältst keine Desktop-Benachrichtigungen", "Enable them now": "Aktiviere diese jetzt", - "Add an email address above to configure email notifications": "Füge eine E-Mail Adresse hinzu um Benachrichtigungen via E-Mail zu erhalten", + "Add an email address above to configure email notifications": "Füge oben eine E-Mail-Adresse hinzu, um die E-Mail-Benachrichtigungseinstellungen zu konfigurieren", "All notifications are currently disabled for all targets.": "Im Moment sind alle Benachrichtigungen für alle Ziele deaktiviert.", "An error occurred whilst saving your email notification preferences.": "Beim Speichern deiner E-Mail-Benachrichtigungseinstellungen ist ein Fehler aufgetreten.", "and remove": "und entfernen", @@ -72,7 +72,7 @@ "There are advanced notifications which are not shown here": "Es existieren erweiterte Benachrichtigungen, welche hier nicht angezeigt werden", "The server may be unavailable or overloaded": "Der Server ist vermutlich nicht erreichbar oder überlastet", "This room is inaccessible to guests. You may be able to join if you register": "Dieser Raum ist nicht verfügbar für Gäste. Vermutlich klappt es wenn du dich anmeldest", - "Unable to fetch notification target list": "Nicht möglich die Zielliste für Benachrichtigungen zu erhalten", + "Unable to fetch notification target list": "Liste der Benachrichtigungsempfänger konnte nicht abgerufen werden", "Unable to join network": "Es ist nicht möglich, dem Netzwerk beizutreten", "unknown error code": "Unbekannter Fehlercode", "Unnamed room": "Unbenannter Raum", From 5c5b42e930328b84d45ad982b14a2bbabf3710a2 Mon Sep 17 00:00:00 2001 From: Bamstam Date: Tue, 30 May 2017 17:16:51 +0000 Subject: [PATCH 016/105] Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index c13504a4..32d0f815 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -37,7 +37,7 @@ "Enable desktop notifications": "Desktop-Benachrichtigungen aktivieren", "Enable email notifications": "Aktiviere E-Mail Benachrichtigungen", "Enable notifications for this account": "Aktiviere Benachrichtigungen für diesen Benutzer", - "Enter keywords separated by a comma:": "Kommagetrennte Schlagworte eingeben:", + "Enter keywords separated by a comma:": "Schlagworte kommagetrennt eingeben:", "Error": "Fehler", "Error saving email notification preferences": "Fehler beim Speichern der E-Mail-Benachrichtigungseinstellungen", "#example": "#Beispiel", From 7b96b18c70ca8fb5572bcc10e6d4c3424587836d Mon Sep 17 00:00:00 2001 From: Szimszon Date: Tue, 30 May 2017 20:17:23 +0000 Subject: [PATCH 017/105] Translated using Weblate (Hungarian) Currently translated at 100.0% (128 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/hu/ --- src/i18n/strings/hu.json | 64 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index 09fa3df9..bcbc393f 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -64,5 +64,67 @@ "Noisy": "Hangos", "Notification targets": "Értesítések célpontja", "Notifications": "Értesítések", - "Notify for all other messages/rooms": "Értesítés minden más üzenethez/szobához" + "Notify for all other messages/rooms": "Értesítés minden más üzenethez/szobához", + "Safari and Opera work too.": "Safarival és Operaval is működik.", + "Collapse panel": "Panel bezárása", + "customServer_text": "Egyedi Matrix szervert használhatsz a Saját szerver URL beállításával.
Ezzel meglévő Matrix fiókot használhatsz Riot klienssel és egyedi szerverrel.

Beállíthatsz egyedi \"identity\" szervert de akkor nem tudsz e-maillel meghívni felhasználót és téged sem tudnak meghívni e-maillel.", + "Expand panel": "Panel kinyitása", + "I understand the risks and wish to continue": "Megértettem a kockázatot és folytatom", + "Notifications on the following keywords follow rules which can’t be displayed here:": "A kulcsszavakhoz tartozó értesítések olyan szabályokat követnek amiket nem lehet itt megjeleníteni:", + "Notify me for anything else": "Értesíts minden egyéb esetben", + "Off": "Ki", + "On": "Be", + "Operation failed": "Művelet sikertelen", + "Permalink": "Állandó hivatkozás", + "Please install Chrome or Firefox for the best experience.": "A legjobb élmény érdekében telepíts Chromeot vagy Firefoxot.", + "Please Register": "Regisztrálj", + "powered by Matrix": "Matrixon alapul", + "Quote": "Idézet", + "Redact": "Szerkeszt", + "Reject": "Elutasít", + "Remove %(name)s from the directory?": "Törlöd a %(name)s szobát a listából?", + "Remove": "Töröl", + "remove %(name)s from the directory": "%(name)s szoba törlése a listából", + "Remove from Directory": "Törlés a szobák listájából", + "Resend": "Újraküld", + "Riot does not know how to join a room on this network": "Riot nem tudja, hogy csatlakozzon ehhez a szobához ezen a hálózaton", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot sok haladó képességét használja a böngészőnek amik közül lehet, hogy nem mind érhető el a most használt böngészőben vagy még csak kísérleti jellegű.", + "Room directory": "Szobák listája", + "Room not found": "A szoba nem található", + "Search for a room": "Szoba keresése", + "Settings": "Beállítások", + "Source URL": "Forrás URL", + "Sorry, your browser is not able to run Riot.": "Elnézést, a böngésződ nem képes futtatni a Riotot.", + "Start chat": "Csevegés indítása", + "The Home Server may be too old to support third party networks": "A Saját szerver lehet, hogy túl régi ahhoz, hogy más hálózatokhoz tudjon kapcsolódni", + "There are advanced notifications which are not shown here": "Vannak haladó értesítések amik itt nincsenek megjelenítve", + "The server may be unavailable or overloaded": "A szerver nem érhető el vagy túl van terhelve", + "This room is inaccessible to guests. You may be able to join if you register": "A szoba vendégek számára elérhetetlen. Csak regisztráció után tudsz csatlakozni", + " to room": " szobába", + "Unable to fetch notification target list": "Nem sikerült letölteni az értesítési célok listáját", + "Unable to join network": "Nem sikerült kapcsolódni a hálózathoz", + "Unable to look up room ID from server": "Nem lehet lekérdezni a szoba ID-ját a szervertől", + "Unhide Preview": "Előkép felfedése", + "unknown error code": "ismeretlen hiba kód", + "Unnamed room": "Név nélküli szoba", + "Uploaded on %(date)s by %(user)s": "Feltöltés: %(date)s, %(user)s", + "View Decrypted Source": "Visszafejtett forrás megjelenítése", + "View Source": "Forrás megjelenítése", + "When I'm invited to a room": "Amikor meghívtak a szobába", + "World readable": "Mindenki olvashatja", + "You cannot delete this image. (%(code)s)": "Nem törölheted ezt a képet. (%(code)s)", + "You cannot delete this message. (%(code)s)": "Nem törölheted ezt az üzenetet. (%(code)s)", + "You are not receiving desktop notifications": "Nem fogadsz asztali értesítéseket", + "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Valószínűleg Riottól eltérő klienssel állítottad be. Riotból nem állítható de érvényben van", + "Sunday": "Vasárnap", + "Monday": "Hétfő", + "Tuesday": "Kedd", + "Wednesday": "Szerda", + "Thursday": "Csütörtök", + "Friday": "Péntek", + "Saturday": "Szombat", + "Today": "Ma", + "Yesterday": "Tegnap", + "Welcome page": "Üdvözlő oldal", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!" } From 94c4e54d7c718d6c8f342d4f79f46a96620b8a39 Mon Sep 17 00:00:00 2001 From: Thomas Juberg Date: Tue, 30 May 2017 20:20:09 +0000 Subject: [PATCH 018/105] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 87.5% (112 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/nb_NO/ --- src/i18n/strings/nb_NO.json | 103 +++++++++++++++++++++++++++++++++++- 1 file changed, 102 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/nb_NO.json b/src/i18n/strings/nb_NO.json index ed503025..8192d4b3 100644 --- a/src/i18n/strings/nb_NO.json +++ b/src/i18n/strings/nb_NO.json @@ -9,5 +9,106 @@ "Can't update user notification settings": "Kan ikke oppdatere brukervarsel innstillinger", "Close": "Lukk", "Create new room": "Opprett nytt rom", - "Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom" + "Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom", + "Safari and Opera work too.": "Safari og Opera fungerer også.", + "Call invitation": "Anropsinvitasjon", + "Collapse panel": "Skjul panel", + "Custom Server Options": "Tilpassede serveralternativer", + "customServer_text": "Du kan benytte de egendefinerte serveralternativene til å logge deg på andre Matrix-servere ved å spesifisere en annen Hjemmeserver-URL.
Dette lar deg benytte Riot med en eksisterende Matrix konto på en annen hjemmeserver.

Du kan også angi en egendefinert identitetsserver, men du vil ikke kunne invitere brukere via e-post, eller bli invitert via e-post selv.", + "delete the alias": "Slett aliaset", + "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Slett rom alias %(alias)s og fjern %(name)s fra katalogen?", + "Direct Chat": "Direkte Chat", + "Directory": "Katalog", + "Download this file": "Last ned filen", + "Drop here %(toAction)s": "Dra hit %(toAction)s", + "Enable audible notifications in web client": "Aktiver lyd-varsel i webklient", + "Enable desktop notifications": "Aktiver skrivebordsvarsler", + "Enable email notifications": "Aktiver e-postvarsler", + "Enable notifications for this account": "Aktiver varsler for denne konto", + "Enable them now": "Aktiver dem nå", + "Enter keywords separated by a comma:": "Angi nøkkelord adskilt med komma:", + "Error": "Feil", + "Error saving email notification preferences": "Feil ved lagring av e-postvarselinnstillinger", + "#example": "#eksempel", + "Expand panel": "Utvid panel", + "Failed to": "Feilet å", + "Failed to add tag %(tagName)s to room": "Kunne ikke legge til tagg %(tagName)s til rom", + "Failed to change settings": "Kunne ikke endre innstillingene", + "Failed to forget room %(errCode)s": "Kunne ikke glemme rommet %(errCode)s", + "Failed to update keywords": "Kunne ikke oppdatere nøkkelord", + "Failed to get protocol list from Home Server": "Kunne ikke hente protokolliste fra Hjemme-Server", + "Failed to get public room list": "Kunne ikke hente offentlig romliste", + "Failed to join the room": "Kunne ikke bli med på rommet", + "Failed to remove tag %(tagName)s from room": "Kunne ikke fjerne tagg %(tagName)s fra rommet", + "Failed to set direct chat tag": "Kunne ikke angi direkte chat-tagg", + "Failed to set Direct Message status of room": "Kunne ikke angi status for direkte melding i rommet", + "Favourite": "Favoritt", + "Fetching third party location failed": "Kunne ikke hente tredjeparts lokalisering", + "Files": "Filer", + "Filter room names": "Filtrer romnavn", + "Forget": "Glem", + " from room": " fra rommet", + "Guests can join": "Gjester kan bli med", + "Guest users can't invite users. Please register to invite": "Gjester kan ikke invitere brukere. Vennligst registrer deg for å invitere", + "I understand the risks and wish to continue": "Jeg forstår risikoen og ønsker å fortsette", + "Invite to this room": "Inviter til dette rommet", + "Keywords": "Nøkkelord", + "Leave": "Forlat", + "Low Priority": "Lav Prioritet", + "Members": "Medlemmer", + "Messages containing my display name": "Meldinger som inneholder mitt visningsnavn", + "Messages containing my user name": "Meldinger som inneholder mitt brukernavn", + "Messages in group chats": "Meldinger i gruppesamtaler", + "Messages in one-to-one chats": "Meldinger i en-til-en samtaler", + "Messages sent by bot": "Meldinger sendt av bot", + "more": "mer", + "No rooms to show": "Ingen rom å vise", + "Noisy": "Bråkete", + "Notification targets": "Mål for varsel", + "Notifications": "Varsler", + "Notifications on the following keywords follow rules which can’t be displayed here:": "Varsler på de følgende nøkkelordene følger regler som ikke kan vises her:", + "Notify for all other messages/rooms": "Varsler om alle andre meldinger/rom", + "Notify me for anything else": "Varsle meg om alt annet", + "Off": "Av", + "On": "På", + "Permalink": "Permanent lenke", + "Please install Chrome or Firefox for the best experience.": "Vennligst installer Chrome eller Firefox for den beste opplevelsen.", + "Please Register": "Vennligst registrer deg", + "powered by Matrix": "benytter seg av Matrix", + "Quote": "Sitat", + "Redact": "Maskere", + "Reject": "Avvis", + "Remove %(name)s from the directory?": "Fjern %(name)s fra katalogen?", + "Remove": "Fjern", + "remove %(name)s from the directory": "fjern %(name)s fra katalogen", + "Remove from Directory": "Fjern fra katalogen", + "Resend": "Send på nytt", + "Riot does not know how to join a room on this network": "Riot vet ikke hvordan man kan komme inn på et rom på dette nettverket", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot benytter mange avanserte nettleserfunksjoner, og noen av disse er ikke tilgjengelige eller er eksperimentelle på din nåværende nettleser.", + "Room directory": "Rom katalog", + "Room not found": "Rommet ble ikke funnet", + "Search for a room": "Søk etter et rom", + "Settings": "Innstillinger", + "Source URL": "Kilde URL", + "Sorry, your browser is not able to run Riot.": "Beklager, din nettleser er ikke i stand til å kjøre Riot.", + "Start chat": "Start chat", + "The Home Server may be too old to support third party networks": "Hjemme-serveren kan være for gammel til å støtte tredjeparts-nettverk", + "There are advanced notifications which are not shown here": "Det er avanserte varsler som ikke vises her", + "The server may be unavailable or overloaded": "Serveren kan være utilgjengelig eller overbelastet", + "This room is inaccessible to guests. You may be able to join if you register": "Dette rommet er ikke tilgjengelig for gjester. Du kan kanskje komme inn om du registrerer deg", + " to room": " til rom", + "Unable to fetch notification target list": "Kunne ikke hente varsel-mål liste", + "Unable to join network": "Kunne ikke bli med i nettverket", + "Unable to look up room ID from server": "Kunne ikke slå opp rom-ID fra serveren", + "Unhide Preview": "Vis forhåndsvisning", + "unknown error code": "ukjent feilkode", + "Unnamed room": "Rom uten navn", + "Uploaded on %(date)s by %(user)s": "Lastet opp den %(date)s av %(user)s", + "View Decrypted Source": "Vis dekryptert kilde", + "View Source": "Vis kilde", + "When I'm invited to a room": "Når jeg blir invitert til et rom", + "World readable": "Verden lesbar", + "You cannot delete this image. (%(code)s)": "Du kan ikke slette dette bildet. (%(code)s)", + "You cannot delete this message. (%(code)s)": "Du kan ikke slette denne meldingen. (%(code)s)", + "You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler" } From b588618b0e7cb5c1cca37745e4c71bd13283cfef Mon Sep 17 00:00:00 2001 From: dtygel Date: Tue, 30 May 2017 19:03:06 +0000 Subject: [PATCH 019/105] Translated using Weblate (Portuguese (Brazil)) Currently translated at 92.9% (119 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/pt_BR/ --- src/i18n/strings/pt_BR.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 7687d4c4..3bfb0f0a 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -9,12 +9,12 @@ "Close": "Fechar", "Create new room": "Criar nova sala", "Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix", - "Custom Server Options": "Opções de personalização do servidor", + "Custom Server Options": "Opções para Servidor Personalizado", "delete the alias": "apagar o apelido da sala", "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Apagar o apelido %(alias)s da sala e remover %(name)s da lista pública?", "Direct Chat": "Conversa pessoal", "Directory": "Diretório", - "Dismiss": "Encerrar", + "Dismiss": "Descartar", "Download this file": "Baixar este arquivo", "Drop here %(toAction)s": "Arraste aqui para %(toAction)s", "Enable audible notifications in web client": "Ativar notificações de áudio no cliente web", @@ -70,7 +70,7 @@ "Operation failed": "A operação falhou", "Permalink": "Link permanente", "Please Register": "Por favor, cadastre-se", - "powered by Matrix": "distribuído por Matrix", + "powered by Matrix": "rodando a partir do Matrix", "Quote": "Citar", "Redact": "Remover", "Reject": "Rejeitar", From c8eb2b0f191c7ce9adacc23e7a4fa9aac63a47f1 Mon Sep 17 00:00:00 2001 From: Szimszon Date: Tue, 30 May 2017 20:20:13 +0000 Subject: [PATCH 020/105] Translated using Weblate (Hungarian) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/hu/ --- src/i18n/strings/hu.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index bcbc393f..5417bfda 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -126,5 +126,6 @@ "Today": "Ma", "Yesterday": "Tegnap", "Welcome page": "Üdvözlő oldal", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!" + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!", + "Messages containing keywords": "Az üzenet kulcsszavakat tartalmaz" } From 4d06739a3c839deaa73b6acc9ed4dab39e6fc54a Mon Sep 17 00:00:00 2001 From: Krombel Date: Tue, 30 May 2017 23:27:56 +0000 Subject: [PATCH 021/105] Translated using Weblate (German) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ --- src/i18n/strings/de_DE.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 32d0f815..f3e19ae9 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -127,5 +127,14 @@ "Messages sent by bot": "Nachrichten von Bots", "more": "mehr", "When I'm invited to a room": "Wenn ich in einen Raum eingeladen werde", - "customServer_text": "Du kannst die erweiterten Server-Optionen nutzen, um dich auf anderen Matrix-Servern anzumelden, indem du eine andere Heimserver-URL eingibst.
Dies ermöglicht es dir, Riot mit einem bereits existierenden Matrix-Konto auf einem anderen Heimserver zu nutzen.

Du kannst auch einen benutzerdefinierten Identitäts-Server eingeben, allerdings wirst du dann nicht in der Lage sein, andere Benutzer per E-Mail-Adresse einzuladen oder selbst Einladungen per E-Mail-Adresse zu erhalten." + "customServer_text": "Du kannst die erweiterten Server-Optionen nutzen, um dich auf anderen Matrix-Servern anzumelden, indem du eine andere Heimserver-URL eingibst.
Dies ermöglicht es dir, Riot mit einem bereits existierenden Matrix-Konto auf einem anderen Heimserver zu nutzen.

Du kannst auch einen benutzerdefinierten Identitäts-Server eingeben, allerdings wirst du dann nicht in der Lage sein, andere Benutzer per E-Mail-Adresse einzuladen oder selbst Einladungen per E-Mail-Adresse zu erhalten.", + "Safari and Opera work too.": "Safari und Opera funktionieren ebenfalls.", + "I understand the risks and wish to continue": "Ich verstehe das Risiko und möchte fortfahren", + "Messages containing keywords": "Nachrichten, die definierte Schlagworte enthalten", + "Please install Chrome or Firefox for the best experience.": "Bitte installiere Chrome oder Firefox für die beste Erfahrung.", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot nutzt manche erweiterten Browser-Funktionen - manche sind deinem aktuellen Browser nicht verfügbar oder im experimentellen Status.", + "Sorry, your browser is not able to run Riot.": "Es tut uns leid, aber dein Browser kann Riot nicht ausführen.", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "In deinem aktuellen Browser kann das Aussehen und Gefühl der Anwendung komplett inkorrekt sein und einige oder alle Funktionen funktionieren evtl. nicht. Du kannst es trotzdem versuchen und fortfahren, aber du bist alleine mit allen Problemen auf die du stößt!", + "Expand panel": "Panel ausklappen", + "Collapse panel": "Panel einklappen" } From db0c84f317697dd7b263ef61885a8ad4c24e3f4c Mon Sep 17 00:00:00 2001 From: Amandine Date: Tue, 30 May 2017 22:38:06 +0000 Subject: [PATCH 022/105] Translated using Weblate (French) Currently translated at 93.0% (120 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/fr/ --- src/i18n/strings/fr.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 08d578a5..55c0671b 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -9,12 +9,12 @@ "Close": "Fermer", "Create new room": "Créer un nouveau salon", "Couldn't find a matching Matrix room": "Impossible de trouver un salon Matrix", - "Custom Server Options": "Options de Serveur Personnalisé", + "Custom Server Options": "Options de serveur personnalisées", "delete the alias": "Supprimer l'alias", "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Supprimer l'alias %(alias)s du salon et supprimer %(name)s du répertoire ?", "Direct Chat": "Conversation Directe", "Directory": "Répertoire", - "Dismiss": "Rejeter", + "Dismiss": "Ignorer", "Download this file": "Télécharger ce fichier", "Drop here %(toAction)s": "Déposer ici pour %(toAction)s", "Enable audible notifications in web client": "Activer les notifications sonores pour le client web", From dfa1b553f0c28556bd00979b830215aa224e9a8b Mon Sep 17 00:00:00 2001 From: Thomas Juberg Date: Tue, 30 May 2017 20:30:31 +0000 Subject: [PATCH 023/105] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 94.5% (122 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/nb_NO/ --- src/i18n/strings/nb_NO.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/nb_NO.json b/src/i18n/strings/nb_NO.json index 8192d4b3..673c3f2c 100644 --- a/src/i18n/strings/nb_NO.json +++ b/src/i18n/strings/nb_NO.json @@ -110,5 +110,16 @@ "World readable": "Verden lesbar", "You cannot delete this image. (%(code)s)": "Du kan ikke slette dette bildet. (%(code)s)", "You cannot delete this message. (%(code)s)": "Du kan ikke slette denne meldingen. (%(code)s)", - "You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler" + "You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler", + "Messages containing keywords": "Meldinger som inneholder nøkkelord", + "Sunday": "Søndag", + "Monday": "Mandag", + "Tuesday": "Tirsdag", + "Wednesday": "Onsdag", + "Thursday": "Torsdag", + "Friday": "Fredag", + "Saturday": "Lørdag", + "Today": "I dag", + "Yesterday": "I går", + "Welcome page": "Velkomst side" } From 020d496cb129c298e4896c84cdda3e2e60cbad5b Mon Sep 17 00:00:00 2001 From: RiotTranslate Date: Wed, 31 May 2017 01:38:30 +0200 Subject: [PATCH 024/105] Update from Weblate. (#4094) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 99.1% (119 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (German) Currently translated at 100.0% (120 of 120 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (Hungarian) Currently translated at 100.0% (128 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/hu/ * Translated using Weblate (Portuguese (Brazil)) Currently translated at 92.9% (119 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/pt_BR/ * Translated using Weblate (Norwegian Bokmål) Currently translated at 87.5% (112 of 128 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/nb_NO/ * Translated using Weblate (Hungarian) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/hu/ * Translated using Weblate (German) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/de/ * Translated using Weblate (Norwegian Bokmål) Currently translated at 94.5% (122 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/nb_NO/ * Translated using Weblate (French) Currently translated at 93.0% (120 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/fr/ --- src/i18n/strings/de_DE.json | 11 +++- src/i18n/strings/fr.json | 4 +- src/i18n/strings/hu.json | 65 +++++++++++++++++++- src/i18n/strings/nb_NO.json | 114 +++++++++++++++++++++++++++++++++++- src/i18n/strings/pt_BR.json | 6 +- 5 files changed, 192 insertions(+), 8 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 32d0f815..f3e19ae9 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -127,5 +127,14 @@ "Messages sent by bot": "Nachrichten von Bots", "more": "mehr", "When I'm invited to a room": "Wenn ich in einen Raum eingeladen werde", - "customServer_text": "Du kannst die erweiterten Server-Optionen nutzen, um dich auf anderen Matrix-Servern anzumelden, indem du eine andere Heimserver-URL eingibst.
Dies ermöglicht es dir, Riot mit einem bereits existierenden Matrix-Konto auf einem anderen Heimserver zu nutzen.

Du kannst auch einen benutzerdefinierten Identitäts-Server eingeben, allerdings wirst du dann nicht in der Lage sein, andere Benutzer per E-Mail-Adresse einzuladen oder selbst Einladungen per E-Mail-Adresse zu erhalten." + "customServer_text": "Du kannst die erweiterten Server-Optionen nutzen, um dich auf anderen Matrix-Servern anzumelden, indem du eine andere Heimserver-URL eingibst.
Dies ermöglicht es dir, Riot mit einem bereits existierenden Matrix-Konto auf einem anderen Heimserver zu nutzen.

Du kannst auch einen benutzerdefinierten Identitäts-Server eingeben, allerdings wirst du dann nicht in der Lage sein, andere Benutzer per E-Mail-Adresse einzuladen oder selbst Einladungen per E-Mail-Adresse zu erhalten.", + "Safari and Opera work too.": "Safari und Opera funktionieren ebenfalls.", + "I understand the risks and wish to continue": "Ich verstehe das Risiko und möchte fortfahren", + "Messages containing keywords": "Nachrichten, die definierte Schlagworte enthalten", + "Please install Chrome or Firefox for the best experience.": "Bitte installiere Chrome oder Firefox für die beste Erfahrung.", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot nutzt manche erweiterten Browser-Funktionen - manche sind deinem aktuellen Browser nicht verfügbar oder im experimentellen Status.", + "Sorry, your browser is not able to run Riot.": "Es tut uns leid, aber dein Browser kann Riot nicht ausführen.", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "In deinem aktuellen Browser kann das Aussehen und Gefühl der Anwendung komplett inkorrekt sein und einige oder alle Funktionen funktionieren evtl. nicht. Du kannst es trotzdem versuchen und fortfahren, aber du bist alleine mit allen Problemen auf die du stößt!", + "Expand panel": "Panel ausklappen", + "Collapse panel": "Panel einklappen" } diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 08d578a5..55c0671b 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -9,12 +9,12 @@ "Close": "Fermer", "Create new room": "Créer un nouveau salon", "Couldn't find a matching Matrix room": "Impossible de trouver un salon Matrix", - "Custom Server Options": "Options de Serveur Personnalisé", + "Custom Server Options": "Options de serveur personnalisées", "delete the alias": "Supprimer l'alias", "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Supprimer l'alias %(alias)s du salon et supprimer %(name)s du répertoire ?", "Direct Chat": "Conversation Directe", "Directory": "Répertoire", - "Dismiss": "Rejeter", + "Dismiss": "Ignorer", "Download this file": "Télécharger ce fichier", "Drop here %(toAction)s": "Déposer ici pour %(toAction)s", "Enable audible notifications in web client": "Activer les notifications sonores pour le client web", diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index 09fa3df9..5417bfda 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -64,5 +64,68 @@ "Noisy": "Hangos", "Notification targets": "Értesítések célpontja", "Notifications": "Értesítések", - "Notify for all other messages/rooms": "Értesítés minden más üzenethez/szobához" + "Notify for all other messages/rooms": "Értesítés minden más üzenethez/szobához", + "Safari and Opera work too.": "Safarival és Operaval is működik.", + "Collapse panel": "Panel bezárása", + "customServer_text": "Egyedi Matrix szervert használhatsz a Saját szerver URL beállításával.
Ezzel meglévő Matrix fiókot használhatsz Riot klienssel és egyedi szerverrel.

Beállíthatsz egyedi \"identity\" szervert de akkor nem tudsz e-maillel meghívni felhasználót és téged sem tudnak meghívni e-maillel.", + "Expand panel": "Panel kinyitása", + "I understand the risks and wish to continue": "Megértettem a kockázatot és folytatom", + "Notifications on the following keywords follow rules which can’t be displayed here:": "A kulcsszavakhoz tartozó értesítések olyan szabályokat követnek amiket nem lehet itt megjeleníteni:", + "Notify me for anything else": "Értesíts minden egyéb esetben", + "Off": "Ki", + "On": "Be", + "Operation failed": "Művelet sikertelen", + "Permalink": "Állandó hivatkozás", + "Please install Chrome or Firefox for the best experience.": "A legjobb élmény érdekében telepíts Chromeot vagy Firefoxot.", + "Please Register": "Regisztrálj", + "powered by Matrix": "Matrixon alapul", + "Quote": "Idézet", + "Redact": "Szerkeszt", + "Reject": "Elutasít", + "Remove %(name)s from the directory?": "Törlöd a %(name)s szobát a listából?", + "Remove": "Töröl", + "remove %(name)s from the directory": "%(name)s szoba törlése a listából", + "Remove from Directory": "Törlés a szobák listájából", + "Resend": "Újraküld", + "Riot does not know how to join a room on this network": "Riot nem tudja, hogy csatlakozzon ehhez a szobához ezen a hálózaton", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot sok haladó képességét használja a böngészőnek amik közül lehet, hogy nem mind érhető el a most használt böngészőben vagy még csak kísérleti jellegű.", + "Room directory": "Szobák listája", + "Room not found": "A szoba nem található", + "Search for a room": "Szoba keresése", + "Settings": "Beállítások", + "Source URL": "Forrás URL", + "Sorry, your browser is not able to run Riot.": "Elnézést, a böngésződ nem képes futtatni a Riotot.", + "Start chat": "Csevegés indítása", + "The Home Server may be too old to support third party networks": "A Saját szerver lehet, hogy túl régi ahhoz, hogy más hálózatokhoz tudjon kapcsolódni", + "There are advanced notifications which are not shown here": "Vannak haladó értesítések amik itt nincsenek megjelenítve", + "The server may be unavailable or overloaded": "A szerver nem érhető el vagy túl van terhelve", + "This room is inaccessible to guests. You may be able to join if you register": "A szoba vendégek számára elérhetetlen. Csak regisztráció után tudsz csatlakozni", + " to room": " szobába", + "Unable to fetch notification target list": "Nem sikerült letölteni az értesítési célok listáját", + "Unable to join network": "Nem sikerült kapcsolódni a hálózathoz", + "Unable to look up room ID from server": "Nem lehet lekérdezni a szoba ID-ját a szervertől", + "Unhide Preview": "Előkép felfedése", + "unknown error code": "ismeretlen hiba kód", + "Unnamed room": "Név nélküli szoba", + "Uploaded on %(date)s by %(user)s": "Feltöltés: %(date)s, %(user)s", + "View Decrypted Source": "Visszafejtett forrás megjelenítése", + "View Source": "Forrás megjelenítése", + "When I'm invited to a room": "Amikor meghívtak a szobába", + "World readable": "Mindenki olvashatja", + "You cannot delete this image. (%(code)s)": "Nem törölheted ezt a képet. (%(code)s)", + "You cannot delete this message. (%(code)s)": "Nem törölheted ezt az üzenetet. (%(code)s)", + "You are not receiving desktop notifications": "Nem fogadsz asztali értesítéseket", + "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Valószínűleg Riottól eltérő klienssel állítottad be. Riotból nem állítható de érvényben van", + "Sunday": "Vasárnap", + "Monday": "Hétfő", + "Tuesday": "Kedd", + "Wednesday": "Szerda", + "Thursday": "Csütörtök", + "Friday": "Péntek", + "Saturday": "Szombat", + "Today": "Ma", + "Yesterday": "Tegnap", + "Welcome page": "Üdvözlő oldal", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!", + "Messages containing keywords": "Az üzenet kulcsszavakat tartalmaz" } diff --git a/src/i18n/strings/nb_NO.json b/src/i18n/strings/nb_NO.json index ed503025..673c3f2c 100644 --- a/src/i18n/strings/nb_NO.json +++ b/src/i18n/strings/nb_NO.json @@ -9,5 +9,117 @@ "Can't update user notification settings": "Kan ikke oppdatere brukervarsel innstillinger", "Close": "Lukk", "Create new room": "Opprett nytt rom", - "Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom" + "Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom", + "Safari and Opera work too.": "Safari og Opera fungerer også.", + "Call invitation": "Anropsinvitasjon", + "Collapse panel": "Skjul panel", + "Custom Server Options": "Tilpassede serveralternativer", + "customServer_text": "Du kan benytte de egendefinerte serveralternativene til å logge deg på andre Matrix-servere ved å spesifisere en annen Hjemmeserver-URL.
Dette lar deg benytte Riot med en eksisterende Matrix konto på en annen hjemmeserver.

Du kan også angi en egendefinert identitetsserver, men du vil ikke kunne invitere brukere via e-post, eller bli invitert via e-post selv.", + "delete the alias": "Slett aliaset", + "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Slett rom alias %(alias)s og fjern %(name)s fra katalogen?", + "Direct Chat": "Direkte Chat", + "Directory": "Katalog", + "Download this file": "Last ned filen", + "Drop here %(toAction)s": "Dra hit %(toAction)s", + "Enable audible notifications in web client": "Aktiver lyd-varsel i webklient", + "Enable desktop notifications": "Aktiver skrivebordsvarsler", + "Enable email notifications": "Aktiver e-postvarsler", + "Enable notifications for this account": "Aktiver varsler for denne konto", + "Enable them now": "Aktiver dem nå", + "Enter keywords separated by a comma:": "Angi nøkkelord adskilt med komma:", + "Error": "Feil", + "Error saving email notification preferences": "Feil ved lagring av e-postvarselinnstillinger", + "#example": "#eksempel", + "Expand panel": "Utvid panel", + "Failed to": "Feilet å", + "Failed to add tag %(tagName)s to room": "Kunne ikke legge til tagg %(tagName)s til rom", + "Failed to change settings": "Kunne ikke endre innstillingene", + "Failed to forget room %(errCode)s": "Kunne ikke glemme rommet %(errCode)s", + "Failed to update keywords": "Kunne ikke oppdatere nøkkelord", + "Failed to get protocol list from Home Server": "Kunne ikke hente protokolliste fra Hjemme-Server", + "Failed to get public room list": "Kunne ikke hente offentlig romliste", + "Failed to join the room": "Kunne ikke bli med på rommet", + "Failed to remove tag %(tagName)s from room": "Kunne ikke fjerne tagg %(tagName)s fra rommet", + "Failed to set direct chat tag": "Kunne ikke angi direkte chat-tagg", + "Failed to set Direct Message status of room": "Kunne ikke angi status for direkte melding i rommet", + "Favourite": "Favoritt", + "Fetching third party location failed": "Kunne ikke hente tredjeparts lokalisering", + "Files": "Filer", + "Filter room names": "Filtrer romnavn", + "Forget": "Glem", + " from room": " fra rommet", + "Guests can join": "Gjester kan bli med", + "Guest users can't invite users. Please register to invite": "Gjester kan ikke invitere brukere. Vennligst registrer deg for å invitere", + "I understand the risks and wish to continue": "Jeg forstår risikoen og ønsker å fortsette", + "Invite to this room": "Inviter til dette rommet", + "Keywords": "Nøkkelord", + "Leave": "Forlat", + "Low Priority": "Lav Prioritet", + "Members": "Medlemmer", + "Messages containing my display name": "Meldinger som inneholder mitt visningsnavn", + "Messages containing my user name": "Meldinger som inneholder mitt brukernavn", + "Messages in group chats": "Meldinger i gruppesamtaler", + "Messages in one-to-one chats": "Meldinger i en-til-en samtaler", + "Messages sent by bot": "Meldinger sendt av bot", + "more": "mer", + "No rooms to show": "Ingen rom å vise", + "Noisy": "Bråkete", + "Notification targets": "Mål for varsel", + "Notifications": "Varsler", + "Notifications on the following keywords follow rules which can’t be displayed here:": "Varsler på de følgende nøkkelordene følger regler som ikke kan vises her:", + "Notify for all other messages/rooms": "Varsler om alle andre meldinger/rom", + "Notify me for anything else": "Varsle meg om alt annet", + "Off": "Av", + "On": "På", + "Permalink": "Permanent lenke", + "Please install Chrome or Firefox for the best experience.": "Vennligst installer Chrome eller Firefox for den beste opplevelsen.", + "Please Register": "Vennligst registrer deg", + "powered by Matrix": "benytter seg av Matrix", + "Quote": "Sitat", + "Redact": "Maskere", + "Reject": "Avvis", + "Remove %(name)s from the directory?": "Fjern %(name)s fra katalogen?", + "Remove": "Fjern", + "remove %(name)s from the directory": "fjern %(name)s fra katalogen", + "Remove from Directory": "Fjern fra katalogen", + "Resend": "Send på nytt", + "Riot does not know how to join a room on this network": "Riot vet ikke hvordan man kan komme inn på et rom på dette nettverket", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot benytter mange avanserte nettleserfunksjoner, og noen av disse er ikke tilgjengelige eller er eksperimentelle på din nåværende nettleser.", + "Room directory": "Rom katalog", + "Room not found": "Rommet ble ikke funnet", + "Search for a room": "Søk etter et rom", + "Settings": "Innstillinger", + "Source URL": "Kilde URL", + "Sorry, your browser is not able to run Riot.": "Beklager, din nettleser er ikke i stand til å kjøre Riot.", + "Start chat": "Start chat", + "The Home Server may be too old to support third party networks": "Hjemme-serveren kan være for gammel til å støtte tredjeparts-nettverk", + "There are advanced notifications which are not shown here": "Det er avanserte varsler som ikke vises her", + "The server may be unavailable or overloaded": "Serveren kan være utilgjengelig eller overbelastet", + "This room is inaccessible to guests. You may be able to join if you register": "Dette rommet er ikke tilgjengelig for gjester. Du kan kanskje komme inn om du registrerer deg", + " to room": " til rom", + "Unable to fetch notification target list": "Kunne ikke hente varsel-mål liste", + "Unable to join network": "Kunne ikke bli med i nettverket", + "Unable to look up room ID from server": "Kunne ikke slå opp rom-ID fra serveren", + "Unhide Preview": "Vis forhåndsvisning", + "unknown error code": "ukjent feilkode", + "Unnamed room": "Rom uten navn", + "Uploaded on %(date)s by %(user)s": "Lastet opp den %(date)s av %(user)s", + "View Decrypted Source": "Vis dekryptert kilde", + "View Source": "Vis kilde", + "When I'm invited to a room": "Når jeg blir invitert til et rom", + "World readable": "Verden lesbar", + "You cannot delete this image. (%(code)s)": "Du kan ikke slette dette bildet. (%(code)s)", + "You cannot delete this message. (%(code)s)": "Du kan ikke slette denne meldingen. (%(code)s)", + "You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler", + "Messages containing keywords": "Meldinger som inneholder nøkkelord", + "Sunday": "Søndag", + "Monday": "Mandag", + "Tuesday": "Tirsdag", + "Wednesday": "Onsdag", + "Thursday": "Torsdag", + "Friday": "Fredag", + "Saturday": "Lørdag", + "Today": "I dag", + "Yesterday": "I går", + "Welcome page": "Velkomst side" } diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 7687d4c4..3bfb0f0a 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -9,12 +9,12 @@ "Close": "Fechar", "Create new room": "Criar nova sala", "Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix", - "Custom Server Options": "Opções de personalização do servidor", + "Custom Server Options": "Opções para Servidor Personalizado", "delete the alias": "apagar o apelido da sala", "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Apagar o apelido %(alias)s da sala e remover %(name)s da lista pública?", "Direct Chat": "Conversa pessoal", "Directory": "Diretório", - "Dismiss": "Encerrar", + "Dismiss": "Descartar", "Download this file": "Baixar este arquivo", "Drop here %(toAction)s": "Arraste aqui para %(toAction)s", "Enable audible notifications in web client": "Ativar notificações de áudio no cliente web", @@ -70,7 +70,7 @@ "Operation failed": "A operação falhou", "Permalink": "Link permanente", "Please Register": "Por favor, cadastre-se", - "powered by Matrix": "distribuído por Matrix", + "powered by Matrix": "rodando a partir do Matrix", "Quote": "Citar", "Redact": "Remover", "Reject": "Rejeitar", From a0d641df18e48db5c9f855bf5937553673a92f06 Mon Sep 17 00:00:00 2001 From: Jean GB Date: Wed, 31 May 2017 08:34:00 +0000 Subject: [PATCH 025/105] Translated using Weblate (French) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/fr/ --- src/i18n/strings/fr.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 55c0671b..d05a2cb8 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -119,5 +119,14 @@ " to room": " au salon", "Advanced notification settings": "Paramètres de notifications avancés", "customServer_text": "Vous pouvez utiliser l'option de serveur personnalisé pour vous connectez à d'autres serveurs Matrix, en spécifiant une adresse de homerserver différente.
Cela permet d'utiliser Riot avec un compte existant sur un homeserverdifférent.

Vous pouvez aussi indiquer un serveur d'identité personnel mais vous ne pourrez plus inviter des utilisateurs par email, ou être invité par email.", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Les notifications pour les mots clés suivant répondent à des critères qui ne peuvent pas être affichés ici :" + "Notifications on the following keywords follow rules which can’t be displayed here:": "Les notifications pour les mots clés suivant répondent à des critères qui ne peuvent pas être affichés ici :", + "Collapse panel": "Déplier le panneau", + "Expand panel": "Etendre le panneau", + "I understand the risks and wish to continue": "Je comprends les risques et souhaite continuer", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utilise de nombreuses fonctionnalités avancées du navigateur, certaines ne sont pas disponibles ou expérimentales sur votre navigateur actuel.", + "Sorry, your browser is not able to run Riot.": "Désolé, votre navigateur n'est pas capable de faire tourner Riot.", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourrait être complètement incorrects, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez pas de support si vous rencontrer des problèmes.", + "Please install Chrome or Firefox for the best experience.": "Veuillez installer Chrome ou Firefox pour une expérience optimale.", + "Safari and Opera work too.": "Safari et Opera fonctionnent aussi.", + "Messages containing keywords": "Messages contenant mots-clés" } From 21783d6ade6b4905504c1b5081be68391619e1b1 Mon Sep 17 00:00:00 2001 From: Jean GB Date: Wed, 31 May 2017 09:55:49 +0000 Subject: [PATCH 026/105] Translated using Weblate (French) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/fr/ --- src/i18n/strings/fr.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index d05a2cb8..8d76f3cf 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -22,7 +22,7 @@ "Enable email notifications": "Activer les notifications par e-mail", "Enable notifications for this account": "Activer les notifications pour ce compte", "Enable them now": "Les activer maintenant", - "Enter keywords separated by a comma:": "Entrez les mots clés séparés par une virgule", + "Enter keywords separated by a comma:": "Entrez les mots clés séparés par une virgule :", "Error": "Erreur", "Error saving email notification preferences": "Erreur lors de la sauvegarde des notifications par email", "#example": "#exemple", @@ -125,8 +125,8 @@ "I understand the risks and wish to continue": "Je comprends les risques et souhaite continuer", "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utilise de nombreuses fonctionnalités avancées du navigateur, certaines ne sont pas disponibles ou expérimentales sur votre navigateur actuel.", "Sorry, your browser is not able to run Riot.": "Désolé, votre navigateur n'est pas capable de faire tourner Riot.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourrait être complètement incorrects, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez pas de support si vous rencontrer des problèmes.", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourraient être complètement incorrects, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez pas de support si vous rencontrez des problèmes.", "Please install Chrome or Firefox for the best experience.": "Veuillez installer Chrome ou Firefox pour une expérience optimale.", "Safari and Opera work too.": "Safari et Opera fonctionnent aussi.", - "Messages containing keywords": "Messages contenant mots-clés" + "Messages containing keywords": "Messages contenant mots clés" } From decd6668c026e0ddeb2f8e88e8e3824a64ed88a7 Mon Sep 17 00:00:00 2001 From: dtygel Date: Wed, 31 May 2017 12:06:34 +0000 Subject: [PATCH 027/105] Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (129 of 129 strings) Translation: Riot Web/Riot Web Translate-URL: https://translate.nordgedanken.de/projects/riot-web/riot-web/pt_BR/ --- src/i18n/strings/pt_BR.json | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 3bfb0f0a..0769c860 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -119,5 +119,15 @@ "Failed to remove tag %(tagName)s from room": "Não foi possível remover a marcação %(tagName)s desta sala", "Welcome page": "Página de boas vindas", "Advanced notification settings": "Configurações avançadas de notificação", - "customServer_text": "Você pode usar as opções de servidor personalizado para entrar em outros servidores Matrix, especificando uma URL de outro Servidor de Base. Isso permite que você use Riot com uma conta Matrix que exista em outro Servidor de Base. Você também pode configurar um servidor de Identidade personalizado, mas neste caso não poderá convidar usuárias(os) pelo endereço de e-mail, ou ser convidado(a) pelo seu endereço de e-mail." + "customServer_text": "Você pode usar as opções de servidor personalizado para entrar em outros servidores Matrix, especificando uma URL de outro Servidor de Base. Isso permite que você use Riot com uma conta Matrix que exista em outro Servidor de Base. Você também pode configurar um servidor de Identidade personalizado, mas neste caso não poderá convidar usuárias(os) pelo endereço de e-mail, ou ser convidado(a) pelo seu endereço de e-mail.", + "Safari and Opera work too.": "Safari e Opera funcionam também.", + "All notifications are currently disabled for all targets.": "Todas as notificações estão atualmente desabilitadas para todos os casos.", + "Collapse panel": "Colapsar o painel", + "Expand panel": "Expandir o painel", + "I understand the risks and wish to continue": "Entendo os riscos e desejo continuar", + "Messages containing keywords": "Mensagens contendo palavras-chave", + "Please install Chrome or Firefox for the best experience.": "Por favor instale Chrome ou Firefox para ter a melhor experiência de uso.", + "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "O Riot usa muitas funcionalidades avançadas do navegador, algumas das quais não estão disponíveis ou ainda são experimentais no seu navegador atual.", + "Sorry, your browser is not able to run Riot.": "Perdão. O seu navegador não é capaz de rodar o Riot.", + "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Com o seu navegador atual, a aparência e sensação de uso da aplicação podem estar completamente incorretas, e algumas das funcionalidades poderão não funcionar. Se você quiser tentar de qualquer maneira, pode continuar, mas aí vai ter que se virar sozinho(a) com os problemas que porventura encontrar!" } From 52ddcd8a600bba9b66f66b04a7cc5640a705b81b Mon Sep 17 00:00:00 2001 From: Kegan Dougal Date: Wed, 31 May 2017 14:51:08 +0100 Subject: [PATCH 028/105] Translate src/vector/platform --- src/i18n/strings/en_EN.json | 4 ++++ src/vector/index.js | 1 - src/vector/platform/ElectronPlatform.js | 5 +++-- src/vector/platform/VectorBasePlatform.js | 6 ++++-- src/vector/platform/WebPlatform.js | 9 ++++++--- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index adf0800d..494ad65d 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -1,4 +1,5 @@ { + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s", "Safari and Opera work too.": "Safari and Opera work too.", "Add an email address above to configure email notifications": "Add an email address above to configure email notifications", "Advanced notification settings": "Advanced notification settings", @@ -88,6 +89,7 @@ "remove %(name)s from the directory": "remove %(name)s from the directory", "Remove from Directory": "Remove from Directory", "Resend": "Resend", + "Riot Desktop on %(platformName)": "Riot Desktop on %(platformName)", "Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network", "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.", "Room directory": "Room directory", @@ -106,6 +108,7 @@ "Unable to join network": "Unable to join network", "Unable to look up room ID from server": "Unable to look up room ID from server", "Unhide Preview": "Unhide Preview", + "Unknown device": "Unknown device", "unknown error code": "unknown error code", "Unnamed room": "Unnamed room", "Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s", @@ -126,6 +129,7 @@ "Saturday": "Saturday", "Today": "Today", "Yesterday": "Yesterday", + "You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.", "Welcome page": "Welcome page", "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!" } diff --git a/src/vector/index.js b/src/vector/index.js index 432710fb..716e9c53 100644 --- a/src/vector/index.js +++ b/src/vector/index.js @@ -278,7 +278,6 @@ async function loadApp() { , document.getElementById('matrixchat')); } else if (validBrowser) { UpdateChecker.start(); - const MatrixChat = sdk.getComponent('structures.MatrixChat'); window.matrixChat = ReactDOM.render( Date: Wed, 31 May 2017 15:06:03 +0100 Subject: [PATCH 029/105] Translate src/vector --- src/i18n/strings/en_EN.json | 5 +++++ src/vector/index.html | 2 +- src/vector/index.js | 4 ++-- src/vector/submit-rageshake.js | 9 +++++---- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index 494ad65d..2c8bb19a 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -12,6 +12,8 @@ "Can't update user notification settings": "Can't update user notification settings", "Close": "Close", "Collapse panel": "Collapse panel", + "Collecting app version information": "Collecting app version information", + "Collecting logs": "Collecting logs", "Create new room": "Create new room", "Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room", "Custom Server Options": "Custom Server Options", @@ -91,6 +93,7 @@ "Resend": "Resend", "Riot Desktop on %(platformName)": "Riot Desktop on %(platformName)", "Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network", + "Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?", "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.", "Room directory": "Room directory", "Room not found": "Room not found", @@ -112,8 +115,10 @@ "unknown error code": "unknown error code", "Unnamed room": "Unnamed room", "Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s", + "Uploading report": "Uploading report", "View Decrypted Source": "View Decrypted Source", "View Source": "View Source", + "Waiting for response from server": "Waiting for response from server", "When I'm invited to a room": "When I'm invited to a room", "World readable": "World readable", "You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)", diff --git a/src/vector/index.html b/src/vector/index.html index 38810f62..49c2979e 100644 --- a/src/vector/index.html +++ b/src/vector/index.html @@ -36,7 +36,7 @@
- + <% for (var i=0; i < htmlWebpackPlugin.files.js.length; i++) { // Not a particularly graceful way of not putting the indexeddb worker script // into the main page diff --git a/src/vector/index.js b/src/vector/index.js index 716e9c53..9f162051 100644 --- a/src/vector/index.js +++ b/src/vector/index.js @@ -245,13 +245,13 @@ async function loadApp() { if (!preventRedirect) { if (/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream) { - if (confirm("Riot is not supported on mobile web. Install the app?")) { + if (confirm(languageHandler._t("Riot is not supported on mobile web. Install the app?"))) { window.location = "https://itunes.apple.com/us/app/vector.im/id1083446067"; return; } } else if (/Android/.test(navigator.userAgent)) { - if (confirm("Riot is not supported on mobile web. Install the app?")) { + if (confirm(languageHandler._t("Riot is not supported on mobile web. Install the app?"))) { window.location = "https://play.google.com/store/apps/details?id=im.vector.alpha"; return; } diff --git a/src/vector/submit-rageshake.js b/src/vector/submit-rageshake.js index 45b427e8..c6c551c6 100644 --- a/src/vector/submit-rageshake.js +++ b/src/vector/submit-rageshake.js @@ -19,6 +19,7 @@ import q from "q"; import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg'; import PlatformPeg from 'matrix-react-sdk/lib/PlatformPeg'; +import { _t } from 'matrix-react-sdk/lib/languageHandler'; import rageshake from './rageshake' @@ -53,7 +54,7 @@ export default async function sendBugReport(bugReportEndpoint, opts) { opts = opts || {}; const progressCallback = opts.progressCallback || (() => {}); - progressCallback("Collecting app version information"); + progressCallback(_t("Collecting app version information")); let version = "UNKNOWN"; try { version = await PlatformPeg.get().getAppVersion(); @@ -81,7 +82,7 @@ export default async function sendBugReport(bugReportEndpoint, opts) { } if (opts.sendLogs) { - progressCallback("Collecting logs"); + progressCallback(_t("Collecting logs")); const logs = await rageshake.getLogsForReport(); for (let entry of logs) { // encode as UTF-8 @@ -94,7 +95,7 @@ export default async function sendBugReport(bugReportEndpoint, opts) { } } - progressCallback("Uploading report"); + progressCallback(_t("Uploading report")); await _submitReport(bugReportEndpoint, body, progressCallback); } @@ -106,7 +107,7 @@ function _submitReport(endpoint, body, progressCallback) { req.timeout = 5 * 60 * 1000; req.onreadystatechange = function() { if (req.readyState === XMLHttpRequest.LOADING) { - progressCallback("Waiting for response from server"); + progressCallback(_t("Waiting for response from server")); } else if (req.readyState === XMLHttpRequest.DONE) { on_done(); } From 0e742cec277ff3aa708ecaf4028627b3350a74ae Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Wed, 31 May 2017 15:37:30 +0100 Subject: [PATCH 030/105] scripts/fetch-develop.deps.sh: set -e (#4120) ... so that when the git clone fails, it doesn't plough on regardless. --- scripts/fetch-develop.deps.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/fetch-develop.deps.sh b/scripts/fetch-develop.deps.sh index bbbc8341..29309f21 100755 --- a/scripts/fetch-develop.deps.sh +++ b/scripts/fetch-develop.deps.sh @@ -6,6 +6,8 @@ # the branch the current checkout is on, use that branch. Otherwise, # use develop. +set -e + # Look in the many different CI env vars for which branch we're # building if [[ "$TRAVIS" == true ]]; then From 162f3872e5d2182b30346e6f2903b30691d40cf6 Mon Sep 17 00:00:00 2001 From: Kegan Dougal Date: Wed, 31 May 2017 15:40:49 +0100 Subject: [PATCH 031/105] Translate src/components/context_menus|dialogs --- .../views/context_menus/MessageContextMenu.js | 2 +- .../views/dialogs/BugReportDialog.js | 34 +++++++++++-------- .../views/dialogs/ChangelogDialog.js | 7 ++-- src/i18n/strings/en_EN.json | 14 ++++++++ 4 files changed, 38 insertions(+), 19 deletions(-) diff --git a/src/components/views/context_menus/MessageContextMenu.js b/src/components/views/context_menus/MessageContextMenu.js index 5445fd4f..e3f4d140 100644 --- a/src/components/views/context_menus/MessageContextMenu.js +++ b/src/components/views/context_menus/MessageContextMenu.js @@ -182,7 +182,7 @@ module.exports = React.createClass({ if (content.msgtype && content.msgtype !== 'm.bad.encrypted' && content.hasOwnProperty('body')) { forwardButton = (
- Forward Message + { _t('Forward Message') }
); } diff --git a/src/components/views/dialogs/BugReportDialog.js b/src/components/views/dialogs/BugReportDialog.js index 7a65ac58..0db425e3 100644 --- a/src/components/views/dialogs/BugReportDialog.js +++ b/src/components/views/dialogs/BugReportDialog.js @@ -17,6 +17,7 @@ limitations under the License. import React from 'react'; import sdk from 'matrix-react-sdk'; import SdkConfig from 'matrix-react-sdk/lib/SdkConfig'; +import { _t } from 'matrix-react-sdk/lib/languageHandler'; export default class BugReportDialog extends React.Component { constructor(props, context) { @@ -49,12 +50,12 @@ export default class BugReportDialog extends React.Component { const userText = this.state.text; if (!sendLogs && userText.trim().length === 0) { this.setState({ - err: "Please describe the bug and/or send logs.", + err: _t("Please describe the bug and/or send logs."), }); return; } this.setState({ busy: true, progress: null, err: null }); - this._sendProgressCallback("Loading bug report module"); + this._sendProgressCallback(_t("Loading bug report module")); require(['../../../vector/submit-rageshake'], (s) => { s(SdkConfig.get().bug_report_endpoint_url, { @@ -69,8 +70,9 @@ export default class BugReportDialog extends React.Component { }, (err) => { if (!this._unmounted) { this.setState({ - busy: false, progress: null, - err: `Failed to send report: ${err.message}`, + busy: false, + progress: null, + err: _t("Failed to send report: ") + `${err.message}`, }); } }); @@ -105,7 +107,7 @@ export default class BugReportDialog extends React.Component { let cancelButton = null; if (!this.state.busy) { cancelButton = ; } @@ -122,25 +124,27 @@ export default class BugReportDialog extends React.Component { return (
- Report a bug + { _t("Report a bug") }
-

Please describe the bug. What did you do? - What did you expect to happen? - What actually happened?

+

+ { _t("Please describe the bug. What did you do? What did you expect to happen? What actually happened?") } +