From 07600e1fa6c2be9aa3682e51a729c4765e04d855 Mon Sep 17 00:00:00 2001 From: "Pawel Spychalski (DzikuVx)" Date: Sun, 5 May 2024 21:40:10 +0200 Subject: [PATCH] Fix additional tabs --- js/settings.js | 2 +- locale/en/messages.json | 4 +++- tabs/advanced_tuning.html | 2 +- tabs/advanced_tuning.js | 39 +++++++++++++++------------------------ tabs/configuration.js | 2 +- tabs/failsafe.js | 33 +++++++++++++-------------------- tabs/gps.js | 2 +- tabs/mixer.js | 2 +- tabs/osd.js | 25 +++++++++++++++---------- tabs/outputs.js | 2 +- tabs/receiver.js | 2 +- 11 files changed, 53 insertions(+), 62 deletions(-) diff --git a/js/settings.js b/js/settings.js index 086a2658..bcee7627 100644 --- a/js/settings.js +++ b/js/settings.js @@ -618,7 +618,7 @@ var Settings = (function () { var input = inputs.shift(); var settingPair = self.processInput(input); return mspHelper.setSetting(settingPair.setting, settingPair.value, function() { - return self.pickAndSaveSingleInput(inputs); + return self.pickAndSaveSingleInput(inputs, finalCallback); }); } else { if (finalCallback) { diff --git a/locale/en/messages.json b/locale/en/messages.json index 7a240853..565057ba 100644 --- a/locale/en/messages.json +++ b/locale/en/messages.json @@ -1714,7 +1714,9 @@ "auxiliaryEepromSaved": { "message": "EEPROM saved" }, - + "eepromSaved": { + "message": "EEPROM saved" + }, "adjustmentsHelp": { "message": "Configure adjustment switches. See the 'in-flight adjustments' section of the manual for details. The changes that adjustment functions make are not saved automatically. There are 4 slots. Each switch used to concurrently make adjustments requires exclusive use of a slot." }, diff --git a/tabs/advanced_tuning.html b/tabs/advanced_tuning.html index 708d1706..5282ef42 100644 --- a/tabs/advanced_tuning.html +++ b/tabs/advanced_tuning.html @@ -216,7 +216,7 @@
- +
diff --git a/tabs/advanced_tuning.js b/tabs/advanced_tuning.js index 17885eb6..06c195b7 100644 --- a/tabs/advanced_tuning.js +++ b/tabs/advanced_tuning.js @@ -19,6 +19,20 @@ TABS.advanced_tuning.initialize = function (callback) { loadHtml(); + function save_to_eeprom() { + console.log('save_to_eeprom'); + MSP.send_message(MSPCodes.MSP_EEPROM_WRITE, false, false, function () { + GUI.log(i18n.getMessage('eepromSaved')); + + GUI.tab_switch_cleanup(function () { + MSP.send_message(MSPCodes.MSP_SET_REBOOT, false, false, function () { + GUI.log(i18n.getMessage('deviceRebooting')); + GUI.handleReconnect($('.tab_advanced_tuning a')); + }); + }); + }); + } + function loadHtml() { GUI.load(path.join(__dirname, "advanced_tuning.html"), Settings.processHtml(function () { @@ -68,35 +82,12 @@ TABS.advanced_tuning.initialize = function (callback) { TABS.advanced_tuning.checkRequirements_LinearDescent(); $('a.save').on('click', function () { - Settings.saveInputs().then(function () { - var self = this; - MSP.promise(MSPCodes.MSP_EEPROM_WRITE); - var oldText = $(this).text(); - $(this).html("Saved"); - setTimeout(function () { - $(self).html(oldText); - }, 2000); - reboot(); - }); + Settings.saveInputs(save_to_eeprom); }); GUI.content_ready(callback); })); } - - function reboot() { - //noinspection JSUnresolvedVariable - GUI.log(i18n.getMessage('configurationEepromSaved')); - GUI.tab_switch_cleanup(function () { - MSP.send_message(MSPCodes.MSP_SET_REBOOT, false, false, reinitialize); - }); - } - - function reinitialize() { - //noinspection JSUnresolvedVariable - GUI.log(i18n.getMessage('deviceRebooting')); - GUI.handleReconnect($('.tab_advanced_tuning a')); - } }; diff --git a/tabs/configuration.js b/tabs/configuration.js index 04f0bca6..713b8b76 100644 --- a/tabs/configuration.js +++ b/tabs/configuration.js @@ -52,7 +52,7 @@ TABS.configuration.initialize = function (callback, scrollPosition) { ]; function saveSettings(onComplete) { - Settings.saveInputs().then(onComplete); + Settings.saveInputs(onComplete); } saveChainer.setChain(saveChain); diff --git a/tabs/failsafe.js b/tabs/failsafe.js index 8f6f9d19..05c02b0f 100644 --- a/tabs/failsafe.js +++ b/tabs/failsafe.js @@ -127,29 +127,22 @@ TABS.failsafe.initialize = function (callback, scrollPosition) { load_failssafe_config(); - function savePhaseTwo() { - Settings.saveInputs().then(function () { - var self = this; - MSP.promise(MSPCodes.MSP_EEPROM_WRITE); - setTimeout(function () { - $(self).html(''); - }, 2000); - reboot(); - }); - } - - function reboot() { - //noinspection JSUnresolvedVariable - GUI.log(i18n.getMessage('configurationEepromSaved')); - GUI.tab_switch_cleanup(function () { - MSP.send_message(MSPCodes.MSP_SET_REBOOT, false, false, reinitialize); + function save_to_eeprom() { + console.log('save_to_eeprom'); + MSP.send_message(MSPCodes.MSP_EEPROM_WRITE, false, false, function () { + GUI.log(i18n.getMessage('eepromSaved')); + + GUI.tab_switch_cleanup(function () { + MSP.send_message(MSPCodes.MSP_SET_REBOOT, false, false, function () { + GUI.log(i18n.getMessage('deviceRebooting')); + GUI.handleReconnect($('.tab_failsafe a')); + }); + }); }); } - function reinitialize() { - //noinspection JSUnresolvedVariable - GUI.log(i18n.getMessage('deviceRebooting')); - GUI.handleReconnect($('.tab_failsafe a')); + function savePhaseTwo() { + Settings.saveInputs(save_to_eeprom); } }; diff --git a/tabs/gps.js b/tabs/gps.js index 3362f3b9..5a72d1f2 100644 --- a/tabs/gps.js +++ b/tabs/gps.js @@ -73,7 +73,7 @@ TABS.gps.initialize = function (callback) { ]; function saveSettings(onComplete) { - Settings.saveInputs().then(onComplete); + Settings.saveInputs(onComplete); } saveChainer.setChain(saveChain); diff --git a/tabs/mixer.js b/tabs/mixer.js index a5ac2a83..7e5e9d55 100644 --- a/tabs/mixer.js +++ b/tabs/mixer.js @@ -58,7 +58,7 @@ TABS.mixer.initialize = function (callback, scrollPosition) { saveChainer.setExitPoint(reboot); function saveSettings(onComplete) { - Settings.saveInputs().then(onComplete); + Settings.saveInputs(onComplete); } function reboot() { diff --git a/tabs/osd.js b/tabs/osd.js index 93a71a91..c0ce01f5 100644 --- a/tabs/osd.js +++ b/tabs/osd.js @@ -3256,6 +3256,20 @@ TABS.osd.initialize = function (callback) { GUI.active_tab = 'osd'; } + function save_to_eeprom() { + console.log('save_to_eeprom'); + MSP.send_message(MSPCodes.MSP_EEPROM_WRITE, false, false, function () { + GUI.log(i18n.getMessage('eepromSaved')); + + GUI.tab_switch_cleanup(function () { + MSP.send_message(MSPCodes.MSP_SET_REBOOT, false, false, function () { + GUI.log(i18n.getMessage('deviceRebooting')); + GUI.handleReconnect($('.tab_osd a')); + }); + }); + }); + } + GUI.load(path.join(__dirname, "osd.html"), Settings.processHtml(function () { // translate to user-selected language i18n.localize(); @@ -3274,16 +3288,7 @@ TABS.osd.initialize = function (callback) { }); $('a.save').on('click', function () { - Settings.saveInputs().then(function () { - var self = this; - MSP.promise(MSPCodes.MSP_EEPROM_WRITE); - GUI.log(i18n.getMessage('osdSettingsSaved')); - var oldText = $(this).text(); - $(this).html("Saved"); - setTimeout(function () { - $(self).html(oldText); - }, 2000); - }); + Settings.saveInputs(save_to_eeprom); }); // Initialise guides checkbox diff --git a/tabs/outputs.js b/tabs/outputs.js index c45d6bfa..5a8ff5be 100644 --- a/tabs/outputs.js +++ b/tabs/outputs.js @@ -79,7 +79,7 @@ TABS.outputs.initialize = function (callback) { } function saveSettings(onComplete) { - Settings.saveInputs().then(onComplete); + Settings.saveInputs(onComplete); } function onLoad() { diff --git a/tabs/receiver.js b/tabs/receiver.js index f1eb4616..9b20874f 100644 --- a/tabs/receiver.js +++ b/tabs/receiver.js @@ -44,7 +44,7 @@ TABS.receiver.initialize = function (callback) { } function saveSettings(onComplete) { - Settings.saveInputs().then(onComplete); + Settings.saveInputs(onComplete); } function drawRollPitchExpo() {