Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Anarios/return-youtube-dislike.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitrii Selivanov <selivano.d@gmail.com>2022-03-26 22:40:52 +0300
committerGitHub <noreply@github.com>2022-03-26 22:40:52 +0300
commita6ac13f852207e9979c83aab4dd9ca51a00e8325 (patch)
tree3ee58d3a144bb7308e966bdb7f73fdbbdf3d83d9
parentef60470755e59752a00b2cfa49badb575696469a (diff)
parent0f0fd7a07043754f1509c59b8a6d32195f32622f (diff)
Merge pull request #515 from PickleNik/main
fixed version checker
-rw-r--r--Extensions/combined/popup.js24
1 files changed, 22 insertions, 2 deletions
diff --git a/Extensions/combined/popup.js b/Extensions/combined/popup.js
index 4ba9855..83ee423 100644
--- a/Extensions/combined/popup.js
+++ b/Extensions/combined/popup.js
@@ -123,15 +123,35 @@ function initializeVersionNumber() {
)
.then((response) => response.json())
.then((json) => {
- if (version !== json.version) {
+ if (compareVersions(json.version, version)) {
document.getElementById("ext-update").innerHTML =
- chrome.i18n.getMessage("textUpdate") + " v" + json.version;
+ chrome.i18n.getMessage("textUpdate") + " v" + json.version;
document.getElementById("ext-update").style.padding = ".25rem .5rem";
}
});
// .catch(console.error);
}
+// returns whether current < latest
+function compareVersions(latestStr, currentStr) {
+ let latestarr = latestStr.split(".");
+ let currentarr = currentStr.split(".");
+ let outdated = false;
+ // goes through version numbers from left to right from greatest to least significant
+ for (let i = 0; i < Math.max(latestarr.length, currentarr.length); i++) {
+ let latest = i < latestarr.length ? parseInt(latestarr[i]) : 0;
+ let current = i < currentarr.length ? parseInt(currentarr[i]) : 0;
+ if (latest > current) {
+ outdated = true;
+ break;
+ } else if (latest < current) {
+ outdated = false;
+ break;
+ }
+ }
+ return outdated;
+}
+
function initializeDisableVoteSubmission() {
chrome.storage.sync.get(["disableVoteSubmission"], (res) => {
handleDisableVoteSubmissionChangeEvent(res.disableVoteSubmission);