mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-18 13:55:14 +03:00
Fixed dimension reporting.
This commit is contained in:
parent
8d5d81f9cf
commit
a72c436e8e
12 changed files with 251 additions and 151 deletions
|
@ -99,11 +99,16 @@ var Features = function (config) {
|
|||
|
||||
self._features = features;
|
||||
self._featureMask = 0;
|
||||
|
||||
self._analyticsChanges = {};
|
||||
};
|
||||
|
||||
Features.prototype.getMask = function () {
|
||||
var self = this;
|
||||
|
||||
analytics.sendChangeEvents(analytics.EVENT_CATEGORIES.FLIGHT_CONTROLLER, self._analyticsChanges);
|
||||
self._analyticsChanges = {};
|
||||
|
||||
return self._featureMask;
|
||||
};
|
||||
|
||||
|
@ -127,6 +132,8 @@ Features.prototype.isEnabled = function (featureName) {
|
|||
Features.prototype.generateElements = function (featuresElements) {
|
||||
var self = this;
|
||||
|
||||
self._featureChanges = {};
|
||||
|
||||
var listElements = [];
|
||||
|
||||
for (var i = 0; i < self._features.length; i++) {
|
||||
|
@ -191,29 +198,48 @@ Features.prototype.generateElements = function (featuresElements) {
|
|||
}
|
||||
};
|
||||
|
||||
Features.prototype.findFeatureByBit = function (bit) {
|
||||
var self = this;
|
||||
|
||||
for (var i = 0; i < self._features.length; i++) {
|
||||
if (self._features[i].bit == bit) {
|
||||
return self._features[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Features.prototype.updateData = function (featureElement) {
|
||||
var self = this;
|
||||
|
||||
if (featureElement.attr('type') === 'checkbox') {
|
||||
var bit = featureElement.data('bit');
|
||||
|
||||
var featureValue;
|
||||
if (featureElement.is(':checked')) {
|
||||
self._featureMask = bit_set(self._featureMask, bit);
|
||||
featureValue = 'On';
|
||||
} else {
|
||||
self._featureMask = bit_clear(self._featureMask, bit);
|
||||
featureValue = 'Off';
|
||||
}
|
||||
self._analyticsChanges['Feature' + self.findFeatureByBit(bit).name] = featureValue;
|
||||
} else if (featureElement.prop('localName') === 'select') {
|
||||
var controlElements = featureElement.children();
|
||||
var selectedBit = featureElement.val();
|
||||
if (selectedBit !== -1) {
|
||||
var featureName;
|
||||
for (var i = 0; i < controlElements.length; i++) {
|
||||
var bit = controlElements[i].value;
|
||||
if (selectedBit === bit) {
|
||||
self._featureMask = bit_set(self._featureMask, bit);
|
||||
featureName = self.findFeatureByBit(bit).name;
|
||||
} else {
|
||||
self._featureMask = bit_clear(self._featureMask, bit);
|
||||
}
|
||||
}
|
||||
if (featureName) {
|
||||
self._analyticsChanges['Feature' + featureName] = 'On';
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue