mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-07 08:19:52 +03:00
improve version check, #1497
This commit is contained in:
@@ -44,7 +44,9 @@ const Version = () => {
|
|||||||
const [restarting, setRestarting] = useState<boolean>(false);
|
const [restarting, setRestarting] = useState<boolean>(false);
|
||||||
const [openInstallDialog, setOpenInstallDialog] = useState<boolean>(false);
|
const [openInstallDialog, setOpenInstallDialog] = useState<boolean>(false);
|
||||||
const [usingDevVersion, setUsingDevVersion] = useState<boolean>(false);
|
const [usingDevVersion, setUsingDevVersion] = useState<boolean>(false);
|
||||||
const [upgradeAvailable, setUpgradeAvailable] = useState<boolean>(false);
|
const [devUpgradeAvailable, setDevUpgradeAvailable] = useState<boolean>(false);
|
||||||
|
const [stableUpgradeAvailable, setStableUpgradeAvailable] =
|
||||||
|
useState<boolean>(false);
|
||||||
const [internetLive, setInternetLive] = useState<boolean>(false);
|
const [internetLive, setInternetLive] = useState<boolean>(false);
|
||||||
const [downloadOnly, setDownloadOnly] = useState<boolean>(false);
|
const [downloadOnly, setDownloadOnly] = useState<boolean>(false);
|
||||||
|
|
||||||
@@ -62,8 +64,13 @@ const Version = () => {
|
|||||||
immediate: false
|
immediate: false
|
||||||
}
|
}
|
||||||
).onSuccess((event) => {
|
).onSuccess((event) => {
|
||||||
const data = event.data as { emsesp_version: string; upgradeable: boolean };
|
const data = event.data as {
|
||||||
setUpgradeAvailable(data.upgradeable);
|
emsesp_version: string;
|
||||||
|
dev_upgradeable: boolean;
|
||||||
|
stable_upgradeable: boolean;
|
||||||
|
};
|
||||||
|
setDevUpgradeAvailable(data.dev_upgradeable);
|
||||||
|
setStableUpgradeAvailable(data.stable_upgradeable);
|
||||||
});
|
});
|
||||||
|
|
||||||
const {
|
const {
|
||||||
@@ -236,8 +243,12 @@ const Version = () => {
|
|||||||
setUsingDevVersion(data.emsesp_version.includes('dev'));
|
setUsingDevVersion(data.emsesp_version.includes('dev'));
|
||||||
};
|
};
|
||||||
|
|
||||||
const showButtons = (showDev?: boolean) => {
|
const showButtons = (showDev: boolean) => {
|
||||||
if (!me.admin) {
|
if (
|
||||||
|
!me.admin ||
|
||||||
|
(showDev && !devUpgradeAvailable) ||
|
||||||
|
(!showDev && !stableUpgradeAvailable)
|
||||||
|
) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -266,10 +277,11 @@ const Version = () => {
|
|||||||
size="small"
|
size="small"
|
||||||
onClick={() => showFirmwareDialog(showDev)}
|
onClick={() => showFirmwareDialog(showDev)}
|
||||||
>
|
>
|
||||||
{upgradeAvailable || (!usingDevVersion && showDev)
|
{(devUpgradeAvailable && showDev) || (stableUpgradeAvailable && !showDev)
|
||||||
? LL.UPGRADE()
|
? showDev && !usingDevVersion
|
||||||
: LL.REINSTALL()}
|
? LL.SWITCH_RELEASE_TYPE()
|
||||||
…
|
: LL.UPGRADE()
|
||||||
|
: LL.INSTALL()}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
@@ -421,8 +433,8 @@ const Version = () => {
|
|||||||
</Typography>
|
</Typography>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
{(devUpgradeAvailable && usingDevVersion) ||
|
||||||
{upgradeAvailable ? (
|
(stableUpgradeAvailable && !usingDevVersion) ? (
|
||||||
<Typography mt={2} color="warning">
|
<Typography mt={2} color="warning">
|
||||||
<InfoOutlinedIcon
|
<InfoOutlinedIcon
|
||||||
color="warning"
|
color="warning"
|
||||||
@@ -436,7 +448,9 @@ const Version = () => {
|
|||||||
color="success"
|
color="success"
|
||||||
sx={{ verticalAlign: 'middle', mr: 2 }}
|
sx={{ verticalAlign: 'middle', mr: 2 }}
|
||||||
/>
|
/>
|
||||||
{LL.LATEST_VERSION()}
|
{LL.LATEST_VERSION(
|
||||||
|
usingDevVersion ? LL.DEVELOPMENT() : LL.STABLE()
|
||||||
|
)}
|
||||||
</Typography>
|
</Typography>
|
||||||
)}
|
)}
|
||||||
</>
|
</>
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const cz: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware se nahrává a instaluje',
|
WAIT_FIRMWARE: 'Firmware se nahrává a instaluje',
|
||||||
INSTALL_VERSION: 'Tímto se instalovat verze {0}. Jste si jistí?',
|
INSTALL_VERSION: 'Tímto se instalovat verze {0}. Jste si jistí?',
|
||||||
UPGRADE_AVAILABLE: 'Je k dispozici aktualizace firmwaru!',
|
UPGRADE_AVAILABLE: 'Je k dispozici aktualizace firmwaru!',
|
||||||
LATEST_VERSION: 'Používáte nejnovější verzi firmwaru',
|
LATEST_VERSION: 'Používáte nejnovější verzi {0}firmwaru',
|
||||||
PLEASE_WAIT: 'Prosím čekejte',
|
PLEASE_WAIT: 'Prosím čekejte',
|
||||||
RESTARTING_PRE: 'Inicializace',
|
RESTARTING_PRE: 'Inicializace',
|
||||||
RESTARTING_POST: 'Příprava',
|
RESTARTING_POST: 'Příprava',
|
||||||
@@ -351,8 +351,8 @@ const cz: Translation = {
|
|||||||
THIS_VERSION: 'Tato verze',
|
THIS_VERSION: 'Tato verze',
|
||||||
PLATFORM: 'Platforma',
|
PLATFORM: 'Platforma',
|
||||||
RELEASE_TYPE: 'Typ sestavení',
|
RELEASE_TYPE: 'Typ sestavení',
|
||||||
REINSTALL: 'Přeinstalovat',
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Pro automatickou kontrolu a instalaci aktualizací je třeba internetové připojení',
|
INTERNET_CONNECTION_REQUIRED: 'Pro automatickou kontrolu a instalaci aktualizací je třeba internetové připojení',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Přepnout na vývojovou verzi'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default cz;
|
export default cz;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const de: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Die Firmware wird hochgeladen und installiert.',
|
WAIT_FIRMWARE: 'Die Firmware wird hochgeladen und installiert.',
|
||||||
INSTALL_VERSION: 'Dadurch wird die Version {0} heruntergeladen. Sind Sie sicher?',
|
INSTALL_VERSION: 'Dadurch wird die Version {0} heruntergeladen. Sind Sie sicher?',
|
||||||
UPGRADE_AVAILABLE: 'Es ist ein Firmware-Upgrade verfügbar.',
|
UPGRADE_AVAILABLE: 'Es ist ein Firmware-Upgrade verfügbar.',
|
||||||
LATEST_VERSION: 'Sie verwenden die neueste Firmware-Version',
|
LATEST_VERSION: 'Sie verwenden die neueste {0} Firmware-Version',
|
||||||
PLEASE_WAIT: 'Bitte warten',
|
PLEASE_WAIT: 'Bitte warten',
|
||||||
RESTARTING_PRE: 'Initialisierung',
|
RESTARTING_PRE: 'Initialisierung',
|
||||||
RESTARTING_POST: 'Vorbereitung',
|
RESTARTING_POST: 'Vorbereitung',
|
||||||
@@ -351,8 +351,8 @@ const de: Translation = {
|
|||||||
THIS_VERSION: 'Diese Version',
|
THIS_VERSION: 'Diese Version',
|
||||||
PLATFORM: 'Plattform',
|
PLATFORM: 'Plattform',
|
||||||
RELEASE_TYPE: 'Release Typ',
|
RELEASE_TYPE: 'Release Typ',
|
||||||
REINSTALL: 'Neu installieren',
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internetverbindung erforderlich für automatische Version-Überprüfung und -Aktualisierung',
|
INTERNET_CONNECTION_REQUIRED: 'Internetverbindung erforderlich für automatische Version-Überprüfung und -Aktualisierung',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Zum Entwickler-Release wechseln'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default de;
|
export default de;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const en: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing',
|
WAIT_FIRMWARE: 'Firmware is uploading and installing',
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?',
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?',
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!',
|
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!',
|
||||||
LATEST_VERSION: 'You are using the latest firmware version',
|
LATEST_VERSION: 'You are using the latest {0} firmware version',
|
||||||
PLEASE_WAIT: 'Please wait',
|
PLEASE_WAIT: 'Please wait',
|
||||||
RESTARTING_PRE: 'Initializing',
|
RESTARTING_PRE: 'Initializing',
|
||||||
RESTARTING_POST: 'Preparing',
|
RESTARTING_POST: 'Preparing',
|
||||||
@@ -351,8 +351,8 @@ const en: Translation = {
|
|||||||
THIS_VERSION: 'This Version',
|
THIS_VERSION: 'This Version',
|
||||||
PLATFORM: 'Platform',
|
PLATFORM: 'Platform',
|
||||||
RELEASE_TYPE: 'Release Type',
|
RELEASE_TYPE: 'Release Type',
|
||||||
REINSTALL: 'Re-install',
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Switch to Development release'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default en;
|
export default en;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const fr: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // 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 {0} firmware version', // TODO translate
|
||||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||||
RESTARTING_POST: 'Preparing', // TODO translate
|
RESTARTING_POST: 'Preparing', // TODO translate
|
||||||
@@ -351,8 +351,8 @@ const fr: Translation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default fr;
|
export default fr;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const it: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // 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 {0}firmware version', // TODO translate
|
||||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||||
RESTARTING_POST: 'Preparing', // TODO translate
|
RESTARTING_POST: 'Preparing', // TODO translate
|
||||||
@@ -351,8 +351,8 @@ const it: Translation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default it;
|
export default it;
|
||||||
|
|||||||
@@ -333,15 +333,15 @@ const nl: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware wordt geüpload en geïnstalleerd',
|
WAIT_FIRMWARE: 'Firmware wordt geüpload en geïnstalleerd',
|
||||||
INSTALL_VERSION: 'Hiermee wordt versie {0} geïnstalleerd. Weet je het zeker?',
|
INSTALL_VERSION: 'Hiermee wordt versie {0} geïnstalleerd. Weet je het zeker?',
|
||||||
UPGRADE_AVAILABLE: 'Er is een firmware-upgrade beschikbaar!',
|
UPGRADE_AVAILABLE: 'Er is een firmware-upgrade beschikbaar!',
|
||||||
LATEST_VERSION: 'U gebruikt de nieuwste firmwareversie',
|
LATEST_VERSION: 'U gebruikt de nieuwste {0} firmwareversie',
|
||||||
PLEASE_WAIT: 'Een ogenblik geduld',
|
PLEASE_WAIT: 'Een ogenblik geduld',
|
||||||
RESTARTING_PRE: 'Initialiseren',
|
RESTARTING_PRE: 'Initialiseren',
|
||||||
RESTARTING_POST: 'Voorbereiding',
|
RESTARTING_POST: 'Voorbereiding',
|
||||||
AUTO_SCROLL: 'Automatisch Scrollen',
|
AUTO_SCROLL: 'Automatisch Scrollen',
|
||||||
DASHBOARD: 'Dashboard',
|
DASHBOARD: 'Dashboard',
|
||||||
DEVELOPER_MODE: 'Ontwikkelaarsmodus',
|
DEVELOPER_MODE: 'Ontwikkelaarsmodus',
|
||||||
BYTES: 'Bytes', // TODO translate
|
BYTES: 'Bytes',
|
||||||
BITMASK: 'Bit Mask',// TODO translate
|
BITMASK: 'Bit Mask',
|
||||||
DUPLICATE: 'Duplicaat',
|
DUPLICATE: 'Duplicaat',
|
||||||
UPGRADE: 'Upgraden',
|
UPGRADE: 'Upgraden',
|
||||||
DASHBOARD_1: 'Alle EMS-entiteiten die actief zijn en als favoriet zijn gemarkeerd, plus alle aangepaste entiteiten en externe sensorgegevens worden hieronder weergegeven.',
|
DASHBOARD_1: 'Alle EMS-entiteiten die actief zijn en als favoriet zijn gemarkeerd, plus alle aangepaste entiteiten en externe sensorgegevens worden hieronder weergegeven.',
|
||||||
@@ -351,8 +351,8 @@ const nl: Translation = {
|
|||||||
THIS_VERSION: 'Deze Versie',
|
THIS_VERSION: 'Deze Versie',
|
||||||
PLATFORM: 'Platform',
|
PLATFORM: 'Platform',
|
||||||
RELEASE_TYPE: 'Release Typ',
|
RELEASE_TYPE: 'Release Typ',
|
||||||
REINSTALL: 'Opnieuw Installeren',
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internetverbinding vereist voor automatische versiecontrole en -upgrade',
|
INTERNET_CONNECTION_REQUIRED: 'Internetverbinding vereist voor automatische versiecontrole en -upgrade',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Switch naar Development release'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default nl;
|
export default nl;
|
||||||
@@ -333,7 +333,7 @@ const no: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // 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 {0}firmware version', // TODO translate
|
||||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||||
RESTARTING_POST: 'Preparing', // TODO translate
|
RESTARTING_POST: 'Preparing', // TODO translate
|
||||||
@@ -351,8 +351,8 @@ const no: Translation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading',
|
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default no;
|
export default no;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const pl: BaseTranslation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // 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 {0} firmware version', // TODO translate
|
||||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||||
RESTARTING_POST: 'Preparing', // TODO translate
|
RESTARTING_POST: 'Preparing', // TODO translate
|
||||||
@@ -351,8 +351,8 @@ const pl: BaseTranslation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||||
|
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default pl;
|
export default pl;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const sk: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmvér sa nahráva a inštaluje',
|
WAIT_FIRMWARE: 'Firmvér sa nahráva a inštaluje',
|
||||||
INSTALL_VERSION: 'Týmto sa inštalovať verzia {0}. Si si istý?',
|
INSTALL_VERSION: 'Týmto sa inštalovať verzia {0}. Si si istý?',
|
||||||
UPGRADE_AVAILABLE: 'K dispozícii je aktualizácia firmvéru!',
|
UPGRADE_AVAILABLE: 'K dispozícii je aktualizácia firmvéru!',
|
||||||
LATEST_VERSION: 'Používate poslednú verziu firmvéru',
|
LATEST_VERSION: 'Používate poslednú {0} verziu firmvéru',
|
||||||
PLEASE_WAIT: 'Čakajte prosím',
|
PLEASE_WAIT: 'Čakajte prosím',
|
||||||
RESTARTING_PRE: 'Prebieha inicializácia',
|
RESTARTING_PRE: 'Prebieha inicializácia',
|
||||||
RESTARTING_POST: 'Príprava',
|
RESTARTING_POST: 'Príprava',
|
||||||
@@ -351,8 +351,8 @@ const sk: Translation = {
|
|||||||
THIS_VERSION: 'Táto verzia',
|
THIS_VERSION: 'Táto verzia',
|
||||||
PLATFORM: 'Platforma',
|
PLATFORM: 'Platforma',
|
||||||
RELEASE_TYPE: 'Typ vydania',
|
RELEASE_TYPE: 'Typ vydania',
|
||||||
REINSTALL: 'Preinštalovať',
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internetové pripojenie je potrebné pre automatickú kontrolu a aktualizáciu',
|
INTERNET_CONNECTION_REQUIRED: 'Internetové pripojenie je potrebné pre automatickú kontrolu a aktualizáciu',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Prepnúť na vývojovú verziu'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default sk;
|
export default sk;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const sv: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware laddas upp och installeras',
|
WAIT_FIRMWARE: 'Firmware laddas upp och installeras',
|
||||||
INSTALL_VERSION: 'Det här kommer installera version {0}. Är du säker?',
|
INSTALL_VERSION: 'Det här kommer installera version {0}. Är du säker?',
|
||||||
UPGRADE_AVAILABLE: 'Det finns en tillgänglig firmwareupgradering!',
|
UPGRADE_AVAILABLE: 'Det finns en tillgänglig firmwareupgradering!',
|
||||||
LATEST_VERSION: 'Du använder den senaste firmwareversionen.',
|
LATEST_VERSION: 'Du använder den senaste {0} firmwareversionen.',
|
||||||
PLEASE_WAIT: 'Var god vänta',
|
PLEASE_WAIT: 'Var god vänta',
|
||||||
RESTARTING_PRE: 'Initialiserar',
|
RESTARTING_PRE: 'Initialiserar',
|
||||||
RESTARTING_POST: 'Förbereder',
|
RESTARTING_POST: 'Förbereder',
|
||||||
@@ -351,8 +351,8 @@ const sv: Translation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internetanslutning krävs för automatisk version kontroll och uppdatering',
|
INTERNET_CONNECTION_REQUIRED: 'Internetanslutning krävs för automatisk version kontroll och uppdatering',
|
||||||
|
SWITCH_RELEASE_TYPE: 'Byt till utvecklingsversion'
|
||||||
};
|
};
|
||||||
|
|
||||||
export default sv;
|
export default sv;
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ const tr: Translation = {
|
|||||||
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
WAIT_FIRMWARE: 'Firmware is uploading and installing', // TODO translate
|
||||||
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
INSTALL_VERSION: 'This will install version {0}. Are you sure?', // TODO translate
|
||||||
UPGRADE_AVAILABLE: 'There is a firmware upgrade available!', // 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 {0}firmware version.', // TODO translate
|
||||||
PLEASE_WAIT: 'Please wait', // TODO translate
|
PLEASE_WAIT: 'Please wait', // TODO translate
|
||||||
RESTARTING_PRE: 'Initializing', // TODO translate
|
RESTARTING_PRE: 'Initializing', // TODO translate
|
||||||
RESTARTING_POST: 'Preparing', // TODO translate
|
RESTARTING_POST: 'Preparing', // TODO translate
|
||||||
@@ -351,8 +351,8 @@ const tr: Translation = {
|
|||||||
THIS_VERSION: 'This Version', // TODO translate
|
THIS_VERSION: 'This Version', // TODO translate
|
||||||
PLATFORM: 'Platform', // TODO translate
|
PLATFORM: 'Platform', // TODO translate
|
||||||
RELEASE_TYPE: 'Release Type', // TODO translate
|
RELEASE_TYPE: 'Release Type', // TODO translate
|
||||||
REINSTALL: 'Re-install', // TODO translate
|
|
||||||
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
INTERNET_CONNECTION_REQUIRED: 'Internet connection required for automatic version checking and upgrading', // TODO translate
|
||||||
|
SWITCH_RELEASE_TYPE: 'Switch to Development release' // TODO translate
|
||||||
};
|
};
|
||||||
|
|
||||||
export default tr;
|
export default tr;
|
||||||
|
|||||||
@@ -219,37 +219,40 @@ void WebStatusService::action(AsyncWebServerRequest * request, JsonVariant json)
|
|||||||
// action = checkUpgrade
|
// action = checkUpgrade
|
||||||
// versions holds the latest development version and stable version in one string, comma separated
|
// versions holds the latest development version and stable version in one string, comma separated
|
||||||
bool WebStatusService::checkUpgrade(JsonObject root, std::string & versions) {
|
bool WebStatusService::checkUpgrade(JsonObject root, std::string & versions) {
|
||||||
std::string current_version_s;
|
|
||||||
#ifndef EMSESP_STANDALONE
|
|
||||||
current_version_s = EMSESP_APP_VERSION;
|
|
||||||
#else
|
|
||||||
// for testing only - see api3 test in test.cpp
|
|
||||||
// current_version_s = "3.6.5";
|
|
||||||
current_version_s = "3.7.2-dev.1";
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!versions.empty()) {
|
if (!versions.empty()) {
|
||||||
version::Semver200_version current_version(current_version_s);
|
version::Semver200_version current_version(current_version_s);
|
||||||
bool using_dev_version = !current_version.prerelease().find("dev"); // look for dev in the name to determine if we're using dev version
|
version::Semver200_version latest_dev_version(versions.substr(0, versions.find(',')));
|
||||||
version::Semver200_version latest_version(using_dev_version ? versions.substr(0, versions.find(',')) : versions.substr(versions.find(',') + 1));
|
version::Semver200_version latest_stable_version(versions.substr(versions.find(',') + 1));
|
||||||
bool upgradeable = (latest_version > current_version);
|
|
||||||
|
// look for dev in the name to determine if we're using a dev release
|
||||||
|
bool using_dev_version = !current_version.prerelease().find("dev");
|
||||||
|
|
||||||
|
bool dev_upgradeable = latest_dev_version > current_version;
|
||||||
|
bool stable_upgradeable = latest_stable_version > current_version;
|
||||||
|
|
||||||
#if defined(EMSESP_DEBUG)
|
#if defined(EMSESP_DEBUG)
|
||||||
emsesp::EMSESP::logger()
|
emsesp::EMSESP::logger()
|
||||||
.debug("Checking Version upgrade. Using %s release branch. current version=%d.%d.%d-%s, latest version=%d.%d.%d-%s (%s upgradeable)",
|
.debug("Checking version upgrade. This version=%d.%d.%d-%s (%s),latest dev=%d.%d.%d-%s (%s upgradeable),latest stable=%d.%d.%d-%s (%s upgradeable)",
|
||||||
(using_dev_version ? "dev" : "stable"),
|
|
||||||
current_version.major(),
|
current_version.major(),
|
||||||
current_version.minor(),
|
current_version.minor(),
|
||||||
current_version.patch(),
|
current_version.patch(),
|
||||||
current_version.prerelease().c_str(),
|
current_version.prerelease().c_str(),
|
||||||
latest_version.major(),
|
using_dev_version ? "Dev" : "Stable",
|
||||||
latest_version.minor(),
|
latest_dev_version.major(),
|
||||||
latest_version.patch(),
|
latest_dev_version.minor(),
|
||||||
latest_version.prerelease().c_str(),
|
latest_dev_version.patch(),
|
||||||
upgradeable ? "IS" : "NOT");
|
latest_dev_version.prerelease().c_str(),
|
||||||
|
dev_upgradeable ? "is" : "is not",
|
||||||
|
latest_stable_version.major(),
|
||||||
|
latest_stable_version.minor(),
|
||||||
|
latest_stable_version.patch(),
|
||||||
|
latest_stable_version.prerelease().c_str(),
|
||||||
|
stable_upgradeable ? "is" : "is not");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
root["upgradeable"] = upgradeable;
|
root["dev_upgradeable"] = dev_upgradeable;
|
||||||
|
root["stable_upgradeable"] = stable_upgradeable;
|
||||||
}
|
}
|
||||||
|
|
||||||
root["emsesp_version"] = current_version_s; // always send back current version
|
root["emsesp_version"] = current_version_s; // always send back current version
|
||||||
|
|||||||
@@ -5,12 +5,19 @@
|
|||||||
#define EMSESP_ACTION_SERVICE_PATH "/rest/action"
|
#define EMSESP_ACTION_SERVICE_PATH "/rest/action"
|
||||||
|
|
||||||
#include <semver200.h> // for version checking
|
#include <semver200.h> // for version checking
|
||||||
|
#include "../emsesp_version.h"
|
||||||
|
|
||||||
namespace emsesp {
|
namespace emsesp {
|
||||||
|
|
||||||
class WebStatusService {
|
class WebStatusService {
|
||||||
public:
|
public:
|
||||||
WebStatusService(AsyncWebServer * server, SecurityManager * securityManager);
|
WebStatusService(AsyncWebServer * server, SecurityManager * securityManager);
|
||||||
|
void set_current_version(const std::string & version) {
|
||||||
|
current_version_s = version;
|
||||||
|
}
|
||||||
|
std::string get_current_version() {
|
||||||
|
return current_version_s;
|
||||||
|
}
|
||||||
|
|
||||||
// make action function public so we can test in the debug and standalone mode
|
// make action function public so we can test in the debug and standalone mode
|
||||||
#ifndef EMSESP_STANDALONE
|
#ifndef EMSESP_STANDALONE
|
||||||
@@ -29,6 +36,8 @@ class WebStatusService {
|
|||||||
bool uploadURL(const char * url);
|
bool uploadURL(const char * url);
|
||||||
bool setSystemStatus(const char * status);
|
bool setSystemStatus(const char * status);
|
||||||
void allvalues(JsonObject output);
|
void allvalues(JsonObject output);
|
||||||
|
|
||||||
|
std::string current_version_s = EMSESP_APP_VERSION;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace emsesp
|
} // namespace emsesp
|
||||||
|
|||||||
Reference in New Issue
Block a user