diff --git a/interface/src/app/settings/Version.tsx b/interface/src/app/settings/Version.tsx
index 2529f1575..d53046e5e 100644
--- a/interface/src/app/settings/Version.tsx
+++ b/interface/src/app/settings/Version.tsx
@@ -9,10 +9,12 @@ import WarningIcon from '@mui/icons-material/Warning';
import {
Box,
Button,
+ Checkbox,
Dialog,
DialogActions,
DialogContent,
DialogTitle,
+ FormControlLabel,
Grid2 as Grid,
Link,
Typography
@@ -91,7 +93,7 @@ const Version = () => {
}, [latestVersion, latestDevVersion]);
const getBinURL = () => {
- if (!latestVersion || !latestDevVersion) {
+ if (!internetLive) {
return '';
}
const filename =
@@ -182,21 +184,16 @@ const Version = () => {
setUsingDevVersion(data.emsesp_version.includes('dev'));
};
- const switchToDev = () => {
- setUsingDevVersion(true);
- setUpgradeAvailable(true);
- };
-
- const showButtons = () => {
+ const showButtons = (showDev?: boolean) => {
if (downloadOnly) {
return (
}
variant="outlined"
onClick={() => setOpenInstallDialog(false)}
color="warning"
size="small"
- sx={{ ml: 2 }}
>
{LL.DOWNLOAD(1)}
@@ -213,7 +210,10 @@ const Version = () => {
size="small"
onClick={() => showFirmwareDialog()}
>
- {upgradeAvailable ? LL.UPGRADE() : LL.REINSTALL()}…
+ {upgradeAvailable || (!usingDevVersion && showDev)
+ ? LL.UPGRADE()
+ : LL.REINSTALL()}
+ …
);
};
@@ -223,6 +223,8 @@ const Version = () => {
return ;
}
+ const isDev = data.emsesp_version.includes('dev');
+
return (
<>
@@ -269,11 +271,36 @@ const Version = () => {
{LL.RELEASE_TYPE()}
-
- {data.emsesp_version.includes('dev')
- ? LL.DEVELOPMENT()
- : LL.STABLE()}
-
+
+ }
+ checked={!isDev}
+ label={LL.STABLE()}
+ sx={{ '& .MuiSvgIcon-root': { fontSize: 18 } }}
+ />
+
+ }
+ checked={isDev}
+ label={LL.DEVELOPMENT()}
+ sx={{ '& .MuiSvgIcon-root': { fontSize: 18 } }}
+ />
@@ -303,10 +330,17 @@ const Version = () => {
{latestVersion.published_at && (
(
- {Math.floor((Date.now() - new Date(latestVersion.published_at).getTime()) / (1000 * 60 * 60 * 24))} days ago)
+ {LL.DAYS_AGO(
+ Math.floor(
+ (Date.now() -
+ new Date(latestVersion.published_at).getTime()) /
+ (1000 * 60 * 60 * 24)
+ )
+ )}
+ )
)}
- {!usingDevVersion && showButtons()}
+ {!usingDevVersion && showButtons(false)}
@@ -317,14 +351,21 @@ const Version = () => {
{latestDevVersion.name}
-
+
{latestDevVersion.published_at && (
(
- {Math.floor((Date.now() - new Date(latestDevVersion.published_at).getTime()) / (1000 * 60 * 60 * 24))} days ago)
+ {LL.DAYS_AGO(
+ Math.floor(
+ (Date.now() -
+ new Date(latestDevVersion.published_at).getTime()) /
+ (1000 * 60 * 60 * 24)
+ )
+ )}
+ )
)}
- {usingDevVersion && showButtons()}
+ {showButtons(true)}
@@ -346,25 +387,11 @@ const Version = () => {
{LL.LATEST_VERSION()}
)}
-
- {!data.emsesp_version.includes('dev') && !usingDevVersion && (
-
-
-
- )}
>
) : (
-
+
- no access to download site
+ {LL.INTERNET_CONNECTION_REQUIRED()}
)}
{renderInstallDialog()}
diff --git a/interface/src/i18n/cz/index.ts b/interface/src/i18n/cz/index.ts
index 4e5585d9f..29918c325 100644
--- a/interface/src/i18n/cz/index.ts
+++ b/interface/src/i18n/cz/index.ts
@@ -332,9 +332,8 @@ const cz: Translation = {
SPECIAL_FUNCTIONS: 'Speciální funkce',
WAIT_FIRMWARE: 'Firmware se nahrává a instaluje',
INSTALL_VERSION: 'Tímto se instalovat verze {0}. Jste si jistí?',
- SWITCH_DEV: 'přepnout na vývojovou verzi',
UPGRADE_AVAILABLE: 'Je k dispozici aktualizace firmwaru!',
- LATEST_VERSION: 'Používáte nejnovější verzi firmwaru.',
+ LATEST_VERSION: 'Používáte nejnovější verzi firmwaru',
PLEASE_WAIT: 'Prosím čekejte',
RESTARTING_PRE: 'Inicializace',
RESTARTING_POST: 'Příprava',
@@ -350,7 +349,9 @@ const cz: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
+ DAYS_AGO: '{0} den{{y|ní|ní|ní|ní|ní}} zpátky'
};
export default cz;
diff --git a/interface/src/i18n/de/index.ts b/interface/src/i18n/de/index.ts
index 2bc12942b..e1761b424 100644
--- a/interface/src/i18n/de/index.ts
+++ b/interface/src/i18n/de/index.ts
@@ -332,9 +332,8 @@ const de: Translation = {
SPECIAL_FUNCTIONS: 'Sonderfunktionen',
WAIT_FIRMWARE: 'Die Firmware wird hochgeladen und installiert.',
INSTALL_VERSION: 'Dadurch wird die Version {0} heruntergeladen. Sind Sie sicher?',
- SWITCH_DEV: 'Wechseln Sie zur Entwicklungsversion!',
UPGRADE_AVAILABLE: 'Es ist ein Firmware-Upgrade verfügbar.',
- LATEST_VERSION: 'Sie verwenden die neueste Firmware-Version.',
+ LATEST_VERSION: 'Sie verwenden die neueste Firmware-Version',
PLEASE_WAIT: 'Bitte warten',
RESTARTING_PRE: 'Initialisierung',
RESTARTING_POST: 'Vorbereitung',
@@ -347,10 +346,12 @@ const de: Translation = {
NO_DATA_1: 'Keine favorisierten EMS-Entitäten gefunden! Verwenden Sie das Modul',
NO_DATA_2: ', um sie zu markieren.',
NO_DATA_3: 'Um alle verfügbaren Entitäten anzuzeigen, gehen Sie zu',
- THIS_VERSION: 'This Version',
+ THIS_VERSION: 'Diese Version',
PLATFORM: 'Plattform',
RELEASE_TYPE: 'Release Typ',
- REINSTALL: 'Neu installieren'
+ REINSTALL: 'Neu installieren',
+ INTERNET_CONNECTION_REQUIRED: 'Internetverbindung erforderlich für automatische Version-Überprüfung und -Aktualisierung',
+ DAYS_AGO: '{0} Tag{{e}} vorher'
};
export default de;
diff --git a/interface/src/i18n/en/index.ts b/interface/src/i18n/en/index.ts
index 5fcccbf0d..2d0e5ed55 100644
--- a/interface/src/i18n/en/index.ts
+++ b/interface/src/i18n/en/index.ts
@@ -332,9 +332,8 @@ const en: Translation = {
SPECIAL_FUNCTIONS: 'Special Functions',
WAIT_FIRMWARE: 'Firmware is uploading and installing',
INSTALL_VERSION: 'This will install version {0}. Are you sure?',
- SWITCH_DEV: 'switch to the development version',
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!',
- LATEST_VERSION: 'You are using the latest firmware version.',
+ LATEST_VERSION: 'You are using the latest firmware version',
PLEASE_WAIT: 'Please wait',
RESTARTING_PRE: 'Initializing',
RESTARTING_POST: 'Preparing',
@@ -350,7 +349,9 @@ const en: Translation = {
THIS_VERSION: 'This Version',
PLATFORM: 'Platform',
RELEASE_TYPE: 'Release Type',
- REINSTALL: 'Re-install'
+ REINSTALL: 'Re-install',
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
+ DAYS_AGO: '{0} day{{s}} ago'
};
export default en;
diff --git a/interface/src/i18n/fr/index.ts b/interface/src/i18n/fr/index.ts
index 6b85f93b6..f767a094e 100644
--- a/interface/src/i18n/fr/index.ts
+++ b/interface/src/i18n/fr/index.ts
@@ -332,9 +332,8 @@ const fr: Translation = {
SPECIAL_FUNCTIONS: 'Special Functions',
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
- SWITCH_DEV: 'switch to the development version', // TODO translate
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
- LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
+ LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
PLEASE_WAIT: 'Please wait', // TODO translate
RESTARTING_PRE: 'Initializing', // TODO translate
RESTARTING_POST: 'Preparing', // TODO translate
@@ -350,7 +349,9 @@ const fr: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
+ DAYS_AGO: '{0} jour{{s}} avant'
};
export default fr;
diff --git a/interface/src/i18n/it/index.ts b/interface/src/i18n/it/index.ts
index 0041efa88..4b958da16 100644
--- a/interface/src/i18n/it/index.ts
+++ b/interface/src/i18n/it/index.ts
@@ -332,9 +332,8 @@ const it: Translation = {
SPECIAL_FUNCTIONS: 'Special Functions', // TODO translate
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
- SWITCH_DEV: 'switch to the development version', // TODO translate
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
- LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
+ LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
PLEASE_WAIT: 'Please wait', // TODO translate
RESTARTING_PRE: 'Initializing', // TODO translate
RESTARTING_POST: 'Preparing', // TODO translate
@@ -350,7 +349,9 @@ const it: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
+ DAYS_AGO: '{0} giorni{{s}} fa'
};
export default it;
diff --git a/interface/src/i18n/nl/index.ts b/interface/src/i18n/nl/index.ts
index 14ed5d9b5..f2e14992e 100644
--- a/interface/src/i18n/nl/index.ts
+++ b/interface/src/i18n/nl/index.ts
@@ -332,9 +332,8 @@ const nl: Translation = {
SPECIAL_FUNCTIONS: 'Speciale functies',
WAIT_FIRMWARE: 'Firmware wordt geüpload en geïnstalleerd',
INSTALL_VERSION: 'Hiermee wordt versie {0} geïnstalleerd. Weet je het zeker?',
- SWITCH_DEV: 'Overschakelen naar de ontwikkelingsversie',
UPGRADE_AVAILABLE: 'Er is een firmware-upgrade beschikbaar!',
- LATEST_VERSION: 'U gebruikt de nieuwste firmwareversie.',
+ LATEST_VERSION: 'U gebruikt de nieuwste firmwareversie',
PLEASE_WAIT: 'Een ogenblik geduld',
RESTARTING_PRE: 'Initialiseren',
RESTARTING_POST: 'Voorbereiding',
@@ -350,7 +349,9 @@ const nl: Translation = {
THIS_VERSION: 'Deze Versie',
PLATFORM: 'Platform',
RELEASE_TYPE: 'Release Typ',
- REINSTALL: 'Opnieuw Installeren'
+ REINSTALL: 'Opnieuw Installeren',
+ INTERNET_CONNECTION_REQUIRED: 'Internetverbinding vereist voor automatische versiecontrole en -upgrade',
+ DAYS_AGO: '{0} dag{{en}} geleden'
};
export default nl;
\ No newline at end of file
diff --git a/interface/src/i18n/no/index.ts b/interface/src/i18n/no/index.ts
index 2bd0d8473..d33be9e74 100644
--- a/interface/src/i18n/no/index.ts
+++ b/interface/src/i18n/no/index.ts
@@ -332,9 +332,8 @@ const no: Translation = {
SPECIAL_FUNCTIONS: 'Special Functions', // TODO translate
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
- SWITCH_DEV: 'switch to the development version', // TODO translate
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
- LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
+ LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
PLEASE_WAIT: 'Please wait', // TODO translate
RESTARTING_PRE: 'Initializing', // TODO translate
RESTARTING_POST: 'Preparing', // TODO translate
@@ -350,7 +349,9 @@ const no: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
+ DAYS_AGO: '{0} dag{{er}} siden'
};
export default no;
diff --git a/interface/src/i18n/pl/index.ts b/interface/src/i18n/pl/index.ts
index d93ede67b..cea449c92 100644
--- a/interface/src/i18n/pl/index.ts
+++ b/interface/src/i18n/pl/index.ts
@@ -332,9 +332,8 @@ const pl: BaseTranslation = {
SPECIAL_FUNCTIONS: 'Special Functions', // TODO translate
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
- SWITCH_DEV: 'switch to the development version', // TODO translate
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
- LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
+ LATEST_VERSION: 'You are using the latest firmware version', // TODO translate
PLEASE_WAIT: 'Please wait', // TODO translate
RESTARTING_PRE: 'Initializing', // TODO translate
RESTARTING_POST: 'Preparing', // TODO translate
@@ -350,7 +349,9 @@ const pl: BaseTranslation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
+ DAYS_AGO: '{0} dzień{{s}} temu'
};
export default pl;
diff --git a/interface/src/i18n/sk/index.ts b/interface/src/i18n/sk/index.ts
index 5c5491b60..c9470f3e8 100644
--- a/interface/src/i18n/sk/index.ts
+++ b/interface/src/i18n/sk/index.ts
@@ -332,9 +332,8 @@ const sk: Translation = {
SPECIAL_FUNCTIONS: 'Špeciálne funkcie',
WAIT_FIRMWARE: 'Firmvér sa nahráva a inštaluje',
INSTALL_VERSION: 'Týmto sa inštalovať verzia {0}. Si si istý?',
- SWITCH_DEV: 'prejsť na vývojovú verziu',
UPGRADE_AVAILABLE: 'K dispozícii je aktualizácia firmvéru!',
- LATEST_VERSION: 'Používate poslednú verziu firmvéru.',
+ LATEST_VERSION: 'Používate poslednú verziu firmvéru',
PLEASE_WAIT: 'Čakajte prosím',
RESTARTING_PRE: 'Prebieha inicializácia',
RESTARTING_POST: 'Príprava',
@@ -350,7 +349,9 @@ const sk: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platforma',
RELEASE_TYPE: 'Typ vydania',
- REINSTALL: 'Preinštalovať'
+ REINSTALL: 'Preinštalovať',
+ INTERNET_CONNECTION_REQUIRED: 'Internetové pripojenie je potrebné pre automatickú kontrolu a aktualizáciu',
+ DAYS_AGO: '{0} d{{ní|eň|ní|ní|ní|ní}} temu'
};
export default sk;
diff --git a/interface/src/i18n/sv/index.ts b/interface/src/i18n/sv/index.ts
index 786f3b5b2..bd44dcf55 100644
--- a/interface/src/i18n/sv/index.ts
+++ b/interface/src/i18n/sv/index.ts
@@ -332,7 +332,6 @@ const sv: Translation = {
SPECIAL_FUNCTIONS: 'Specialfunktioner',
WAIT_FIRMWARE: 'Firmware laddas upp och installeras',
INSTALL_VERSION: 'Det här kommer installera version {0}. Är du säker?',
- SWITCH_DEV: 'byt till utvecklarversionen',
UPGRADE_AVAILABLE: 'Det finns en tillgänglig firmwareupgradering!',
LATEST_VERSION: 'Du använder den senaste firmwareversionen.',
PLEASE_WAIT: 'Var god vänta',
@@ -350,7 +349,9 @@ const sv: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internetanslutning krävs för automatisk version kontroll och uppdatering',
+ DAYS_AGO: '{0} dag{{ar}} sedan'
};
export default sv;
diff --git a/interface/src/i18n/tr/index.ts b/interface/src/i18n/tr/index.ts
index f703ef972..dbf1e4540 100644
--- a/interface/src/i18n/tr/index.ts
+++ b/interface/src/i18n/tr/index.ts
@@ -332,7 +332,6 @@ const tr: Translation = {
SPECIAL_FUNCTIONS: 'Special Functions', // TODO translate
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
- SWITCH_DEV: 'switch to the development version', // TODO translate
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // TODO translate
LATEST_VERSION: 'You are using the latest firmware version.', // TODO translate
PLEASE_WAIT: 'Please wait', // TODO translate
@@ -350,7 +349,9 @@ const tr: Translation = {
THIS_VERSION: 'This Version', // TODO translate
PLATFORM: 'Platform', // TODO translate
RELEASE_TYPE: 'Release Type', // TODO translate
- REINSTALL: 'Re-install' // TODO translate
+ REINSTALL: 'Re-install', // TODO translate
+ INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
+ DAYS_AGO: '{0} gün{{ü|ü|ü|ü|ü|ü}} önce'
};
export default tr;