mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-15 04:15:32 +03:00
Migrate chrome storage API to window.localStorage
Add remove function Remove callback from set and remove Rebased Rebased
This commit is contained in:
parent
c86348b4db
commit
f41e135333
17 changed files with 597 additions and 636 deletions
|
@ -11,37 +11,37 @@ const ReleaseChecker = function (releaseName, releaseUrl) {
|
|||
|
||||
ReleaseChecker.prototype.loadReleaseData = function (processFunction) {
|
||||
const self = this;
|
||||
chrome.storage.local.get([self._releaseLastUpdateTag, self._releaseDataTag], function (result) {
|
||||
const releaseDataTimestamp = $.now();
|
||||
const cacheReleaseData = result[self._releaseDataTag];
|
||||
const cachedReleaseLastUpdate = result[self._releaseLastUpdateTag];
|
||||
if (!cacheReleaseData || !cachedReleaseLastUpdate || releaseDataTimestamp - cachedReleaseLastUpdate > 3600 * 1000) {
|
||||
$.get(self._releaseUrl, function (releaseData) {
|
||||
GUI.log(i18n.getMessage('releaseCheckLoaded',[self._releaseName]));
|
||||
const result = ConfigStorage.get([self._releaseLastUpdateTag, self._releaseDataTag]);
|
||||
const releaseDataTimestamp = $.now();
|
||||
const cacheReleaseData = result[self._releaseDataTag];
|
||||
const cachedReleaseLastUpdate = result[self._releaseLastUpdateTag];
|
||||
|
||||
const data = {};
|
||||
data[self._releaseDataTag] = releaseData;
|
||||
data[self._releaseLastUpdateTag] = releaseDataTimestamp;
|
||||
chrome.storage.local.set(data, function () {});
|
||||
if (!cacheReleaseData || !cachedReleaseLastUpdate || releaseDataTimestamp - cachedReleaseLastUpdate > 3600 * 1000) {
|
||||
$.get(self._releaseUrl, function (releaseData) {
|
||||
GUI.log(i18n.getMessage('releaseCheckLoaded',[self._releaseName]));
|
||||
|
||||
self._processReleaseData(releaseData, processFunction);
|
||||
}).fail(function (data) {
|
||||
let message = '';
|
||||
if (data['responseJSON']) {
|
||||
message = data['responseJSON'].message;
|
||||
}
|
||||
GUI.log(i18n.getMessage('releaseCheckFailed',[self._releaseName,message]));
|
||||
const data = {};
|
||||
data[self._releaseDataTag] = releaseData;
|
||||
data[self._releaseLastUpdateTag] = releaseDataTimestamp;
|
||||
ConfigStorage.set(data);
|
||||
|
||||
self._processReleaseData(cacheReleaseData, processFunction);
|
||||
});
|
||||
} else {
|
||||
if (cacheReleaseData) {
|
||||
GUI.log(i18n.getMessage('releaseCheckCached',[self._releaseName]));
|
||||
self._processReleaseData(releaseData, processFunction);
|
||||
}).fail(function (data) {
|
||||
let message = '';
|
||||
if (data['responseJSON']) {
|
||||
message = data['responseJSON'].message;
|
||||
}
|
||||
GUI.log(i18n.getMessage('releaseCheckFailed',[self._releaseName,message]));
|
||||
|
||||
self._processReleaseData(cacheReleaseData, processFunction);
|
||||
});
|
||||
} else {
|
||||
if (cacheReleaseData) {
|
||||
GUI.log(i18n.getMessage('releaseCheckCached',[self._releaseName]));
|
||||
}
|
||||
});
|
||||
|
||||
self._processReleaseData(cacheReleaseData, processFunction);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue