i18n the OSD warnings list, ordering it in alphabetical order
parent
2778cbb1f1
commit
8d714f87a8
|
@ -4331,57 +4331,124 @@
|
|||
"message": "Select the timer alarm threshold in minutes, when the time exceeds this value the OSD element will blink, setting this to 0 disables the alarm"
|
||||
},
|
||||
|
||||
"osdWarningUnknown": {
|
||||
"message": "Unknown warning (details to be added in a future release)"
|
||||
"osdWarningTextArmingDisabled": {
|
||||
"message": "Arming disabled",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningArmingDisabled": {
|
||||
"message": "Reports the most severe reason for not arming"
|
||||
},
|
||||
"osdWarningTextBatteryNotFull": {
|
||||
"message": "Battery not full",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningBatteryNotFull": {
|
||||
"message": "Alerts when a battery is connected that is not fully charged"
|
||||
},
|
||||
"osdWarningTextBatteryWarning": {
|
||||
"message": "Battery warning",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningBatteryWarning": {
|
||||
"message": "Alerts when the battery voltage falls below warning threshold"
|
||||
},
|
||||
"osdWarningTextBatteryCritical": {
|
||||
"message": "Battery critical",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningBatteryCritical": {
|
||||
"message": "Alerts when the battery voltage falls below the minimum average cell voltage"
|
||||
},
|
||||
"osdWarningTextVisualBeeper": {
|
||||
"message": "Visual beeper",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningVisualBeeper": {
|
||||
"message": "Shows a visualisation of the beeper (shows as 4 asterisks)"
|
||||
},
|
||||
"osdWarningTextCrashFlipMode": {
|
||||
"message": "Crash flip mode",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningCrashFlipMode": {
|
||||
"message": "Warns when flip over after crash mode is activated"
|
||||
},
|
||||
"osdWarningTextEscFail": {
|
||||
"message": "ESC fail",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningEscFail": {
|
||||
"message": "Enumerates a list with the ESCs/motors that are failing (RPM or temperature are out of the configured threshold)"
|
||||
},
|
||||
"osdWarningTextCoreTemperature": {
|
||||
"message": "Core temperature",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningCoreTemperature": {
|
||||
"message": "Warns when MCU core temperature exceeds a configured threshold"
|
||||
},
|
||||
"osdWarningTextRcSmoothingFailure": {
|
||||
"message": "RC Smoothing failure",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningRcSmoothingFailure": {
|
||||
"message": "Warns when RC Smoothing initialization failed"
|
||||
},
|
||||
"osdWarningTextFailsafe": {
|
||||
"message": "Failsafe",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningFailsafe": {
|
||||
"message": "Warns when failsafe occurs"
|
||||
},
|
||||
"osdWarningTextLaunchControl": {
|
||||
"message": "Launch control",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningLaunchControl": {
|
||||
"message": "Warns when Launch Control mode is activated"
|
||||
},
|
||||
"osdWarningTextGpsRescueUnavailable": {
|
||||
"message": "GPS Rescue unavailable",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningGpsRescueUnavailable": {
|
||||
"message": "Warns when GPS Rescue is not available and cannot be activated"
|
||||
},
|
||||
"osdWarningTextGpsRescueDisabled": {
|
||||
"message": "GPS Rescue disabled",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningGpsRescueDisabled": {
|
||||
"message": "Warns when GPS Rescue is disabled"
|
||||
},
|
||||
"osdWarningTextRSSI": {
|
||||
"message": "RSSI",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningRSSI": {
|
||||
"message": "Warns when RSSI is below alarm setting"
|
||||
},
|
||||
"osdWarningTextLinkQuality": {
|
||||
"message": "Link quality",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningLinkQuality": {
|
||||
"message": "Warns when Link Quality is below alarm setting"
|
||||
},
|
||||
"osdWarningTextRssiDbm": {
|
||||
"message": "RSSI dBm",
|
||||
"description": "One of the warnings that can be selected to be shown in the OSD"
|
||||
},
|
||||
"osdWarningRssiDbm": {
|
||||
"message": "Warns when RSSI dBm value is below alarm setting"
|
||||
},
|
||||
"osdWarningTextUnknown": {
|
||||
"message": "Unknown $1"
|
||||
},
|
||||
"osdWarningUnknown": {
|
||||
"message": "Unknown warning (details to be added in a future release)"
|
||||
},
|
||||
|
||||
"osdSectionHelpElements": {
|
||||
"message": "Enable or disable OSD elements."
|
||||
|
|
|
@ -1205,66 +1205,82 @@ OSD.constants = {
|
|||
ALL_WARNINGS: {
|
||||
ARMING_DISABLED: {
|
||||
name: 'ARMING_DISABLED',
|
||||
text: 'osdWarningTextArmingDisabled',
|
||||
desc: 'osdWarningArmingDisabled'
|
||||
},
|
||||
BATTERY_NOT_FULL: {
|
||||
name: 'BATTERY_NOT_FULL',
|
||||
text: 'osdWarningTextBatteryNotFull',
|
||||
desc: 'osdWarningBatteryNotFull'
|
||||
},
|
||||
BATTERY_WARNING: {
|
||||
name: 'BATTERY_WARNING',
|
||||
text: 'osdWarningTextBatteryWarning',
|
||||
desc: 'osdWarningBatteryWarning'
|
||||
},
|
||||
BATTERY_CRITICAL: {
|
||||
name: 'BATTERY_CRITICAL',
|
||||
text: 'osdWarningTextBatteryCritical',
|
||||
desc: 'osdWarningBatteryCritical'
|
||||
},
|
||||
VISUAL_BEEPER: {
|
||||
name: 'VISUAL_BEEPER',
|
||||
text: 'osdWarningTextVisualBeeper',
|
||||
desc: 'osdWarningVisualBeeper'
|
||||
},
|
||||
CRASH_FLIP_MODE: {
|
||||
name: 'CRASH_FLIP_MODE',
|
||||
text: 'osdWarningTextCrashFlipMode',
|
||||
desc: 'osdWarningCrashFlipMode'
|
||||
},
|
||||
ESC_FAIL: {
|
||||
name: 'ESC_FAIL',
|
||||
text: 'osdWarningTextEscFail',
|
||||
desc: 'osdWarningEscFail'
|
||||
},
|
||||
CORE_TEMPERATURE: {
|
||||
name: 'CORE_TEMPERATURE',
|
||||
text: 'osdWarningTextCoreTemperature',
|
||||
desc: 'osdWarningCoreTemperature'
|
||||
},
|
||||
RC_SMOOTHING_FAILURE: {
|
||||
name: 'RC_SMOOTHING_FAILURE',
|
||||
text: 'osdWarningTextRcSmoothingFailure',
|
||||
desc: 'osdWarningRcSmoothingFailure'
|
||||
},
|
||||
FAILSAFE: {
|
||||
name: 'FAILSAFE',
|
||||
text: 'osdWarningTextFailsafe',
|
||||
desc: 'osdWarningFailsafe'
|
||||
},
|
||||
LAUNCH_CONTROL: {
|
||||
name: 'LAUNCH_CONTROL',
|
||||
text: 'osdWarningTextLaunchControl',
|
||||
desc: 'osdWarningLaunchControl'
|
||||
},
|
||||
GPS_RESCUE_UNAVAILABLE: {
|
||||
name: 'GPS_RESCUE_UNAVAILABLE',
|
||||
text: 'osdWarningTextGpsRescueUnavailable',
|
||||
desc: 'osdWarningGpsRescueUnavailable'
|
||||
},
|
||||
GPS_RESCUE_DISABLED: {
|
||||
name: 'GPS_RESCUE_DISABLED',
|
||||
text: 'osdWarningTextGpsRescueDisabled',
|
||||
desc: 'osdWarningGpsRescueDisabled'
|
||||
},
|
||||
RSSI: {
|
||||
name: 'RSSI',
|
||||
text: 'osdWarningTextRSSI',
|
||||
desc: 'osdWarningRSSI'
|
||||
},
|
||||
LINK_QUALITY: {
|
||||
name: 'LINK_QUALITY',
|
||||
text: 'osdWarningTextLinkQuality',
|
||||
desc: 'osdWarningLinkQuality'
|
||||
},
|
||||
RSSI_DBM: {
|
||||
name: 'RSSI_DBM',
|
||||
text: 'osdWarningTextRssiDbm',
|
||||
desc: 'osdWarningRssiDbm'
|
||||
},
|
||||
|
||||
|
@ -1819,7 +1835,7 @@ OSD.msp = {
|
|||
// Push Unknown Warning field
|
||||
} else {
|
||||
var warningNumber = i - OSD.constants.WARNINGS.length + 1;
|
||||
d.warnings.push({name: 'UNKNOWN_' + warningNumber, desc: 'osdWarningUnknown', enabled: (warningFlags & (1 << i)) != 0 });
|
||||
d.warnings.push({name: 'UNKNOWN', text: ['osdWarningTextUnknown', warningNumber], desc: 'osdWarningUnknown', enabled: (warningFlags & (1 << i)) != 0 });
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -2040,6 +2056,32 @@ TABS.osd.initialize = function (callback) {
|
|||
$('.stats-container div.cf_tip').attr('title', i18n.getMessage('osdSectionHelpStats'));
|
||||
$('.warnings-container div.cf_tip').attr('title', i18n.getMessage('osdSectionHelpWarnings'));
|
||||
|
||||
function titleizeField(field) {
|
||||
let finalFieldName = inflection.titleize(field.name);
|
||||
if (field.text) {
|
||||
if (Array.isArray(field.text) && i18n.existsMessage(field.text[0])) {
|
||||
finalFieldName = i18n.getMessage(field.text[0], field.text.slice(1));
|
||||
} else if (i18n.existsMessage(field.text)) {
|
||||
finalFieldName = i18n.getMessage(field.text);
|
||||
}
|
||||
}
|
||||
return finalFieldName;
|
||||
}
|
||||
|
||||
function insertOrdered(fieldList, field) {
|
||||
let added = false;
|
||||
fieldList.children().each(function() {
|
||||
if ($(this).text().localeCompare(field.text(), i18n.getCurrentLocale(), { sensitivity: 'base' }) > 0) {
|
||||
$(this).before(field);
|
||||
added = true;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
if(!added) {
|
||||
fieldList.append(field);
|
||||
}
|
||||
}
|
||||
|
||||
// 2 way binding... sorta
|
||||
function updateOsdView() {
|
||||
// ask for the OSD config data
|
||||
|
@ -2256,9 +2298,16 @@ TABS.osd.initialize = function (callback) {
|
|||
});
|
||||
})
|
||||
);
|
||||
$field.append('<label for="' + field.name + '" class="char-label">' + inflection.titleize(field.name) + '</label>');
|
||||
|
||||
$warningFields.append($field);
|
||||
let finalFieldName = titleizeField(field);
|
||||
$field.append('<label for="' + field.name + '" class="char-label">' + finalFieldName + '</label>');
|
||||
|
||||
// Insert in alphabetical order, with unknown fields at the end
|
||||
if (field.name == 'UNKNOWN') {
|
||||
$warningFields.append($field);
|
||||
} else {
|
||||
insertOrdered($warningFields, $field);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2367,14 +2416,8 @@ TABS.osd.initialize = function (callback) {
|
|||
})
|
||||
);
|
||||
}
|
||||
let finalFieldName = inflection.titleize(field.name);
|
||||
if (field.text) {
|
||||
if (Array.isArray(field.text) && i18n.existsMessage(field.text[0])) {
|
||||
finalFieldName = i18n.getMessage(field.text[0], field.text.slice(1));
|
||||
} else if (i18n.existsMessage(field.text)) {
|
||||
finalFieldName = i18n.getMessage(field.text);
|
||||
}
|
||||
}
|
||||
|
||||
let finalFieldName = titleizeField(field);
|
||||
$field.append('<label for="' + field.name + '" class="char-label">' + finalFieldName + '</label>');
|
||||
if (field.positionable && field.isVisible[OSD.getCurrentPreviewProfile()]) {
|
||||
$field.append(
|
||||
|
@ -2397,17 +2440,7 @@ TABS.osd.initialize = function (callback) {
|
|||
if (field.name == OSD.constants.UNKNOWN_DISPLAY_FIELD.name) {
|
||||
$displayFields.append($field);
|
||||
} else {
|
||||
let added = false;
|
||||
$displayFields.children().each(function() {
|
||||
if ($(this).text().localeCompare($field.text(), i18n.getCurrentLocale(), { sensitivity: 'base' }) > 0) {
|
||||
$(this).before($field);
|
||||
added = true;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
if(!added) {
|
||||
$displayFields.append($field);
|
||||
}
|
||||
insertOrdered($displayFields, $field);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue