ignored http from url exclusions https://github.com/libredirect/browser_extension/issues/665. Cleaned other things
This commit is contained in:
parent
2196db43eb
commit
03d0b41a7f
|
@ -17,8 +17,8 @@ Requirements: [Node.js LTS](https://nodejs.org/)
|
||||||
git clone https://github.com/libredirect/browser_extension
|
git clone https://github.com/libredirect/browser_extension
|
||||||
cd browser_extension
|
cd browser_extension
|
||||||
npm install
|
npm install
|
||||||
npm run html
|
npm run html # Generates html files using Pug
|
||||||
npm run start # Runs on firefox using web-ext
|
npm run start # Runs in debug mode in firefox using Web-ext
|
||||||
```
|
```
|
||||||
### Run on Chromium manually
|
### Run on Chromium manually
|
||||||
1. Open `chrome://extensions`
|
1. Open `chrome://extensions`
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
"use strict"
|
|
||||||
|
|
||||||
import utils from "./utils.js"
|
|
||||||
|
|
||||||
window.browser = window.browser || window.chrome
|
|
||||||
|
|
||||||
let exceptions
|
|
||||||
|
|
||||||
function isException(url) {
|
|
||||||
if (exceptions && url) {
|
|
||||||
if (exceptions.url) for (const item of exceptions.url) if (item == url.href) return true
|
|
||||||
if (exceptions.regex) for (const item of exceptions.regex) if (new RegExp(item).test(url.href)) return true
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
|
||||||
return new Promise(async resolve => {
|
|
||||||
const options = await utils.getOptions()
|
|
||||||
if (options) exceptions = options.exceptions
|
|
||||||
resolve()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
init()
|
|
||||||
browser.storage.onChanged.addListener(init)
|
|
||||||
|
|
||||||
export default {
|
|
||||||
isException,
|
|
||||||
}
|
|
|
@ -83,7 +83,6 @@ function redirect(url, type, initiator, forceRedirection) {
|
||||||
) return "BYPASSTAB"
|
) return "BYPASSTAB"
|
||||||
|
|
||||||
randomInstance = utils.getRandomInstance(instanceList)
|
randomInstance = utils.getRandomInstance(instanceList)
|
||||||
console.log(options[service].localhost)
|
|
||||||
if (config.services[service].frontends[frontend].localhost && options[service].instance == "localhost") {
|
if (config.services[service].frontends[frontend].localhost && options[service].instance == "localhost") {
|
||||||
randomInstance = `http://${frontend}.localhost:8080`
|
randomInstance = `http://${frontend}.localhost:8080`
|
||||||
}
|
}
|
||||||
|
@ -819,6 +818,15 @@ async function copyRaw(url, test) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isException(url) {
|
||||||
|
let exceptions = options.exceptions
|
||||||
|
if (exceptions && url) {
|
||||||
|
if (exceptions.url) for (const item of exceptions.url) if (item == url.href) return true
|
||||||
|
if (exceptions.regex) for (const item of exceptions.regex) if (new RegExp(item).test(url.href)) return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
redirect,
|
redirect,
|
||||||
redirectAsync,
|
redirectAsync,
|
||||||
|
@ -828,5 +836,6 @@ export default {
|
||||||
upgradeOptions,
|
upgradeOptions,
|
||||||
processUpdate,
|
processUpdate,
|
||||||
copyRaw,
|
copyRaw,
|
||||||
switchInstance
|
switchInstance,
|
||||||
|
isException
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
"use strict"
|
"use strict"
|
||||||
|
|
||||||
import generalHelper from "../../assets/javascripts/general.js"
|
|
||||||
import utils from "../../assets/javascripts/utils.js"
|
import utils from "../../assets/javascripts/utils.js"
|
||||||
import servicesHelper from "../../assets/javascripts/services.js"
|
import servicesHelper from "../../assets/javascripts/services.js"
|
||||||
|
|
||||||
|
@ -44,9 +43,10 @@ browser.webRequest.onBeforeRequest.addListener(
|
||||||
if (tabIdRedirects[details.tabId] == false) return null
|
if (tabIdRedirects[details.tabId] == false) return null
|
||||||
let newUrl = servicesHelper.redirect(url, details.type, initiator, tabIdRedirects[details.tabId], details.tabId)
|
let newUrl = servicesHelper.redirect(url, details.type, initiator, tabIdRedirects[details.tabId], details.tabId)
|
||||||
|
|
||||||
if (details.frameAncestors && details.frameAncestors.length > 0 && generalHelper.isException(new URL(details.frameAncestors[0].url))) newUrl = null
|
if (details.frameAncestors && details.frameAncestors.length > 0 && servicesHelper.isException(new URL(details.frameAncestors[0].url))) newUrl = null
|
||||||
|
|
||||||
if (generalHelper.isException(url)) {
|
console.log(servicesHelper.isException(url))
|
||||||
|
if (servicesHelper.isException(url)) {
|
||||||
if (details.type == "main_frame")
|
if (details.type == "main_frame")
|
||||||
newUrl = "BYPASSTAB"
|
newUrl = "BYPASSTAB"
|
||||||
else
|
else
|
||||||
|
|
|
@ -152,14 +152,15 @@ function calcExceptionsCustomInstances() {
|
||||||
}
|
}
|
||||||
calcExceptionsCustomInstances()
|
calcExceptionsCustomInstances()
|
||||||
document.getElementById("custom-exceptions-instance-form").addEventListener("submit", async event => {
|
document.getElementById("custom-exceptions-instance-form").addEventListener("submit", async event => {
|
||||||
|
console.log('something plz.... :\')')
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
|
|
||||||
let val
|
let val
|
||||||
if (instanceType == "url") {
|
if (instanceType == "url" && nameCustomInstanceInput.validity.valid) {
|
||||||
if (nameCustomInstanceInput.validity.valid) {
|
val = nameCustomInstanceInput.value
|
||||||
val = nameCustomInstanceInput.value
|
const url = new URL(val)
|
||||||
if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val)
|
val = url.href
|
||||||
}
|
val = val.replace(/^http:\/\//, 'https://')
|
||||||
|
if (!exceptionsCustomInstances.url.includes(val)) exceptionsCustomInstances.url.push(val)
|
||||||
} else if (instanceType == "regex") {
|
} else if (instanceType == "regex") {
|
||||||
val = nameCustomInstanceInput.value
|
val = nameCustomInstanceInput.value
|
||||||
if (val.trim() != "" && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val)
|
if (val.trim() != "" && !exceptionsCustomInstances.regex.includes(val)) exceptionsCustomInstances.regex.push(val)
|
||||||
|
|
Loading…
Reference in New Issue