mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-25 01:05:15 +03:00
Added expert mode to firmware flasher to hide unstable builds.
This commit is contained in:
parent
84e2cada68
commit
ae5603af2b
3 changed files with 50 additions and 21 deletions
|
@ -57,6 +57,9 @@
|
||||||
"expertMode": {
|
"expertMode": {
|
||||||
"message": "Enable Expert Mode"
|
"message": "Enable Expert Mode"
|
||||||
},
|
},
|
||||||
|
"expertModeDescription": {
|
||||||
|
"message": "Show unreleased and potentially unstable builds"
|
||||||
|
},
|
||||||
"permanentExpertMode": {
|
"permanentExpertMode": {
|
||||||
"message": "Permanently enable Expert Mode"
|
"message": "Permanently enable Expert Mode"
|
||||||
},
|
},
|
||||||
|
@ -2323,10 +2326,10 @@
|
||||||
"message": "Baud Rate"
|
"message": "Baud Rate"
|
||||||
},
|
},
|
||||||
"firmwareFlasherShowDevelopmentReleases":{
|
"firmwareFlasherShowDevelopmentReleases":{
|
||||||
"message": "Show unstable and additional releases"
|
"message": "Show unstable releases"
|
||||||
},
|
},
|
||||||
"firmwareFlasherShowDevelopmentReleasesDescription":{
|
"firmwareFlasherShowDevelopmentReleasesDescription":{
|
||||||
"message": "Show Release-Candidates and Development Releases."
|
"message": "Show release candidates in addition to stable releases"
|
||||||
},
|
},
|
||||||
"firmwareFlasherOptionLoading": {
|
"firmwareFlasherOptionLoading": {
|
||||||
"message": "Loading ..."
|
"message": "Loading ..."
|
||||||
|
|
|
@ -227,17 +227,6 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function showOrHideBuildTypeSelect() {
|
|
||||||
var showDevReleases = $(this).is(':checked');
|
|
||||||
|
|
||||||
if (showDevReleases) {
|
|
||||||
$('tr.build_type').show();
|
|
||||||
} else {
|
|
||||||
$('tr.build_type').hide();
|
|
||||||
buildType_e.val(0).trigger('change');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var buildTypes = [
|
var buildTypes = [
|
||||||
{
|
{
|
||||||
tag: 'firmwareFlasherOptionLabelBuildTypeRelease',
|
tag: 'firmwareFlasherOptionLabelBuildTypeRelease',
|
||||||
|
@ -255,16 +244,48 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
loader: () => self.jenkinsLoader.loadBuilds(job.name, buildJenkinsBoardOptions)
|
loader: () => self.jenkinsLoader.loadBuilds(job.name, buildJenkinsBoardOptions)
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
var buildTypesToShow;
|
||||||
buildTypes = buildTypes.concat(ciBuildsTypes);
|
|
||||||
|
|
||||||
var buildType_e = $('select[name="build_type"]');
|
var buildType_e = $('select[name="build_type"]');
|
||||||
buildTypes.forEach((build, index) => {
|
function buildBuildTypeOptionsList() {
|
||||||
buildType_e.append($("<option value='{0}' selected>{1}</option>".format(index, build.tag ? i18n.getMessage(build.tag) : build.title)))
|
buildType_e.empty();
|
||||||
});
|
buildTypesToShow.forEach((build, index) => {
|
||||||
|
buildType_e.append($("<option value='{0}' selected>{1}</option>".format(index, build.tag ? i18n.getMessage(build.tag) : build.title)))
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
showOrHideBuildTypeSelect();
|
function showOrHideBuildTypes() {
|
||||||
$('input.show_development_releases').change(showOrHideBuildTypeSelect);
|
var showExtraReleases = $(this).is(':checked');
|
||||||
|
|
||||||
|
if (showExtraReleases) {
|
||||||
|
$('tr.build_type').show();
|
||||||
|
$('tr.expert_mode').show();
|
||||||
|
} else {
|
||||||
|
$('tr.build_type').hide();
|
||||||
|
$('tr.expert_mode').hide();
|
||||||
|
buildType_e.val(0).trigger('change');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var globalExpertMode_e = $('input[name="expertModeCheckbox"]');
|
||||||
|
function showOrHideBuildTypeSelect() {
|
||||||
|
var expertModeChecked = $(this).is(':checked');
|
||||||
|
|
||||||
|
globalExpertMode_e.prop('checked', expertModeChecked);
|
||||||
|
if (expertModeChecked) {
|
||||||
|
buildTypesToShow = buildTypes.concat(ciBuildsTypes);
|
||||||
|
buildBuildTypeOptionsList();
|
||||||
|
} else {
|
||||||
|
buildTypesToShow = buildTypes;
|
||||||
|
buildBuildTypeOptionsList();
|
||||||
|
buildType_e.val(0).trigger('change');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var expertMode_e = $('.tab-firmware_flasher input.expert_mode');
|
||||||
|
expertMode_e.prop('checked', globalExpertMode_e.is(':checked'));
|
||||||
|
$('input.show_development_releases').change(showOrHideBuildTypes).change();
|
||||||
|
expertMode_e.change(showOrHideBuildTypeSelect).change();
|
||||||
|
|
||||||
// translate to user-selected language
|
// translate to user-selected language
|
||||||
i18n.localizePage();
|
i18n.localizePage();
|
||||||
|
@ -282,7 +303,7 @@ TABS.firmware_flasher.initialize = function (callback) {
|
||||||
.append($("<option value='0'>{0}</option>".format(i18n.getMessage('firmwareFlasherOptionLabelSelectFirmwareVersion'))));
|
.append($("<option value='0'>{0}</option>".format(i18n.getMessage('firmwareFlasherOptionLabelSelectFirmwareVersion'))));
|
||||||
|
|
||||||
if (!GUI.connect_lock) {
|
if (!GUI.connect_lock) {
|
||||||
buildTypes[build_type].loader();
|
buildTypesToShow[build_type].loader();
|
||||||
}
|
}
|
||||||
|
|
||||||
chrome.storage.local.set({'selected_build_type': build_type});
|
chrome.storage.local.set({'selected_build_type': build_type});
|
||||||
|
|
|
@ -9,6 +9,11 @@
|
||||||
</label></td>
|
</label></td>
|
||||||
<td><span class="description" i18n="firmwareFlasherShowDevelopmentReleasesDescription"></span></td>
|
<td><span class="description" i18n="firmwareFlasherShowDevelopmentReleasesDescription"></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr class="expert_mode option">
|
||||||
|
<td><label><input class="expert_mode toggle" type="checkbox" /><span i18n="expertMode"></span>
|
||||||
|
</label></td>
|
||||||
|
<td><span class="description" i18n="expertModeDescription"></span></td>
|
||||||
|
</tr>
|
||||||
<tr class="build_type">
|
<tr class="build_type">
|
||||||
<td>
|
<td>
|
||||||
<select name="build_type">
|
<select name="build_type">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue