mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-23 16:25:22 +03:00
Merge pull request #1337 from mikeller/fix_flashing_lockout
Fixed lockout for flashing local file caused by the releases being loaded.
This commit is contained in:
commit
a36329c860
1 changed files with 29 additions and 6 deletions
|
@ -3,7 +3,8 @@
|
||||||
TABS.firmware_flasher = {
|
TABS.firmware_flasher = {
|
||||||
releases: null,
|
releases: null,
|
||||||
releaseChecker: new ReleaseChecker('firmware', 'https://api.github.com/repos/betaflight/betaflight/releases'),
|
releaseChecker: new ReleaseChecker('firmware', 'https://api.github.com/repos/betaflight/betaflight/releases'),
|
||||||
jenkinsLoader: new JenkinsLoader('https://ci.betaflight.tech')
|
jenkinsLoader: new JenkinsLoader('https://ci.betaflight.tech'),
|
||||||
|
localFileLoaded: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
TABS.firmware_flasher.initialize = function (callback) {
|
TABS.firmware_flasher.initialize = function (callback) {
|
||||||
|
@ -64,7 +65,7 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
|
|
||||||
$('span.progressLabel').html('<a class="save_firmware" href="#" title="Save Firmware">Loaded Online Firmware: (' + parsed_hex.bytes_total + ' bytes)</a>');
|
$('span.progressLabel').html('<a class="save_firmware" href="#" title="Save Firmware">Loaded Online Firmware: (' + parsed_hex.bytes_total + ' bytes)</a>');
|
||||||
|
|
||||||
$('a.flash_firmware').removeClass('disabled');
|
self.enableFlashing(true);
|
||||||
|
|
||||||
$('div.release_info .target').text(summary.target);
|
$('div.release_info .target').text(summary.target);
|
||||||
$('div.release_info .name').text(summary.version).prop('href', summary.releaseUrl);
|
$('div.release_info .name').text(summary.version).prop('href', summary.releaseUrl);
|
||||||
|
@ -319,7 +320,10 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherLoadFirmwareFile'));
|
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherLoadFirmwareFile'));
|
||||||
$('div.git_info').slideUp();
|
$('div.git_info').slideUp();
|
||||||
$('div.release_info').slideUp();
|
$('div.release_info').slideUp();
|
||||||
$('a.flash_firmware').addClass('disabled');
|
|
||||||
|
if (!self.localFileLoaded) {
|
||||||
|
self.enableFlashing(false);
|
||||||
|
}
|
||||||
|
|
||||||
var versions_e = $('select[name="firmware_version"]').empty();
|
var versions_e = $('select[name="firmware_version"]').empty();
|
||||||
if(target == 0) {
|
if(target == 0) {
|
||||||
|
@ -352,6 +356,9 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
|
|
||||||
// UI Hooks
|
// UI Hooks
|
||||||
$('a.load_file').click(function () {
|
$('a.load_file').click(function () {
|
||||||
|
self.enableFlashing(false);
|
||||||
|
self.localFileLoaded = true;
|
||||||
|
|
||||||
analytics.setFirmwareData(analytics.DATA.FIRMWARE_CHANNEL, undefined);
|
analytics.setFirmwareData(analytics.DATA.FIRMWARE_CHANNEL, undefined);
|
||||||
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SOURCE, 'file');
|
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SOURCE, 'file');
|
||||||
|
|
||||||
|
@ -394,7 +401,7 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
if (parsed_hex) {
|
if (parsed_hex) {
|
||||||
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SIZE, parsed_hex.bytes_total);
|
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SIZE, parsed_hex.bytes_total);
|
||||||
|
|
||||||
$('a.flash_firmware').removeClass('disabled');
|
self.enableFlashing(true);
|
||||||
|
|
||||||
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherFirmwareLocalLoaded', parsed_hex.bytes_total));
|
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherFirmwareLocalLoaded', parsed_hex.bytes_total));
|
||||||
} else {
|
} else {
|
||||||
|
@ -415,7 +422,11 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
*/
|
*/
|
||||||
$('select[name="firmware_version"]').change(function(evt){
|
$('select[name="firmware_version"]').change(function(evt){
|
||||||
$('div.release_info').slideUp();
|
$('div.release_info').slideUp();
|
||||||
$('a.flash_firmware').addClass('disabled');
|
|
||||||
|
if (!self.localFileLoaded) {
|
||||||
|
self.enableFlashing(false);
|
||||||
|
}
|
||||||
|
|
||||||
let release = $("option:selected", evt.target).data("summary");
|
let release = $("option:selected", evt.target).data("summary");
|
||||||
let isCached = FirmwareCache.has(release);
|
let isCached = FirmwareCache.has(release);
|
||||||
if (evt.target.value=="0" || isCached) {
|
if (evt.target.value=="0" || isCached) {
|
||||||
|
@ -436,6 +447,9 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
});
|
});
|
||||||
|
|
||||||
$('a.load_remote_file').click(function (evt) {
|
$('a.load_remote_file').click(function (evt) {
|
||||||
|
self.enableFlashing(false);
|
||||||
|
self.localFileLoaded = false;
|
||||||
|
|
||||||
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SOURCE, 'http');
|
analytics.setFirmwareData(analytics.DATA.FIRMWARE_SOURCE, 'http');
|
||||||
|
|
||||||
if ($('select[name="firmware_version"]').val() == "0") {
|
if ($('select[name="firmware_version"]').val() == "0") {
|
||||||
|
@ -445,7 +459,6 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
|
|
||||||
function failed_to_load() {
|
function failed_to_load() {
|
||||||
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherFailedToLoadOnlineFirmware'));
|
$('span.progressLabel').text(i18n.getMessage('firmwareFlasherFailedToLoadOnlineFirmware'));
|
||||||
$('a.flash_firmware').addClass('disabled');
|
|
||||||
$("a.load_remote_file").removeClass('disabled');
|
$("a.load_remote_file").removeClass('disabled');
|
||||||
$("a.load_remote_file").text(i18n.getMessage('firmwareFlasherButtonLoadOnline'));
|
$("a.load_remote_file").text(i18n.getMessage('firmwareFlasherButtonLoadOnline'));
|
||||||
}
|
}
|
||||||
|
@ -691,3 +704,13 @@ TABS.firmware_flasher.cleanup = function (callback) {
|
||||||
|
|
||||||
if (callback) callback();
|
if (callback) callback();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
TABS.firmware_flasher.enableFlashing = function (enabled) {
|
||||||
|
var self = this;
|
||||||
|
|
||||||
|
if (enabled) {
|
||||||
|
$('a.flash_firmware').removeClass('disabled');
|
||||||
|
} else {
|
||||||
|
$('a.flash_firmware').addClass('disabled');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue