diff options
| author | Hygna <hygna@proton.me> | 2022-10-17 16:32:19 +0100 |
|---|---|---|
| committer | Hygna <hygna@proton.me> | 2022-10-17 16:33:57 +0100 |
| commit | b5e0a297d83035c371758131fd0182afa2115ff0 (patch) | |
| tree | 01398606dcc09422dbbe03f98cbb5e799d182f5a /src/assets | |
| parent | Translated using Weblate (Galician) (diff) | |
| download | libredirect-b5e0a297d83035c371758131fd0182afa2115ff0.zip | |
Remove instances not in the redirects list from the enabled list
Closes https://github.com/libredirect/libredirect/issues/489
Diffstat (limited to '')
| -rw-r--r-- | src/assets/javascripts/services.js | 29 | ||||
| -rw-r--r-- | src/assets/javascripts/utils.js | 3 |
2 files changed, 31 insertions, 1 deletions
diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index 92d891d7..7b73d9d5 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -784,6 +784,34 @@ function modifyContentSecurityPolicy(details) { }
}
+function processEnabledInstanceList() {
+ return new Promise(resolve => {
+ fetch("/config/config.json")
+ .then(response => response.text())
+ .then(configData => {
+ const config = JSON.parse(configData)
+ browser.storage.local.get(["redirects", "options"], r => {
+ let options = r.options
+ for (const service in config.services) {
+ for (const frontend in config.services[service].frontends) {
+ if (config.services[service].frontends[frontend].instanceList) {
+ for (const network in config.networks) {
+ for (const instance of options[frontend][network].enabled) {
+ let i = redirects[frontend][network].indexOf(instance)
+ if (i < 0) options[frontend][network].enabled.splice(i, 1)
+ }
+ }
+ }
+ }
+ }
+ browser.storage.local.set({ options }, () => {
+ resolve()
+ })
+ })
+ })
+ })
+}
+
export default {
redirect,
computeService,
@@ -795,4 +823,5 @@ export default { upgradeOptions,
processUpdate,
modifyContentSecurityPolicy,
+ processEnabledInstanceList,
}
diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js index 1f09435c..66a439bf 100644 --- a/src/assets/javascripts/utils.js +++ b/src/assets/javascripts/utils.js @@ -46,7 +46,8 @@ function updateInstances() { await initBlackList() const instances = JSON.parse(http.responseText) - servicesHelper.setRedirects(instances) + await servicesHelper.setRedirects(instances) + await servicesHelper.processEnabledInstanceList() console.info("Successfully updated Instances") resolve(true) |
