aboutsummaryrefslogtreecommitdiffstats
path: root/src/assets
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2022-08-02 18:09:24 +0300
committerBobIsMyManager <bimmgitsignature.nly8m@simplelogin.co>2022-08-02 22:03:25 +0100
commit8ea4d37b43b71b9ab5f81f1d95a0ad1ff1abc65c (patch)
tree326c1a65883694b16b159d55939a56495ff1befe /src/assets
parentBegin work on instagram unify settings (diff)
downloadlibredirect-8ea4d37b43b71b9ab5f81f1d95a0ad1ff1abc65c.zip
rebase
Diffstat (limited to 'src/assets')
-rw-r--r--src/assets/javascripts/instagram.js23
-rw-r--r--src/assets/javascripts/utils.js158
2 files changed, 44 insertions, 137 deletions
diff --git a/src/assets/javascripts/instagram.js b/src/assets/javascripts/instagram.js
index 1690c84a..00042074 100644
--- a/src/assets/javascripts/instagram.js
+++ b/src/assets/javascripts/instagram.js
@@ -102,32 +102,12 @@ function initBibliogramPreferences(test, from) {
if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
checkedInstances = [...bibliogramNormalRedirectsChecks, ...bibliogramNormalCustomRedirects]
}
- utils.getPreferencesFromToken("bibliogram", from, checkedInstances, "settings", "/settings.json")
- utils.setPreferencesFromToken("bibliogram", checkedInstances, "settings")
+ await utils.getPreferencesFromToken("bibliogram", from, checkedInstances, "settings", "settings.json")
}
resolve(true)
})
}
-function setBibliogramPreferences() {
- return new Promise(async resolve => {
- await init()
- if (disableInstagram || protocol === undefined) {
- resolve()
- return
- }
- let checkedInstances = []
- if (protocol == "loki") checkedInstances = [...bibliogramLokiCustomRedirects]
- else if (protocol == "i2p") checkedInstances = [...bibliogramI2pCustomRedirects]
- else if (protocol == "tor") checkedInstances = [...bibliogramTorRedirectsChecks, ...bibliogramTorCustomRedirects]
- if ((checkedInstances.length === 0 && protocolFallback) || protocol == "normal") {
- checkedInstances = [...bibliogramNormalRedirectsChecks, ...bibliogramNormalCustomRedirects]
- }
- utils.setPreferencesFromToken("bibliogram", checkedInstances, "settings")
- resolve()
- })
-}
-
function all() {
return [
...bibliogramNormalRedirectsChecks,
@@ -254,7 +234,6 @@ function initDefaults() {
export default {
setRedirects,
initBibliogramPreferences,
- setBibliogramPreferences,
reverse,
redirect,
initDefaults,
diff --git a/src/assets/javascripts/utils.js b/src/assets/javascripts/utils.js
index 59beeac7..a6b011a3 100644
--- a/src/assets/javascripts/utils.js
+++ b/src/assets/javascripts/utils.js
@@ -352,19 +352,19 @@ function copyCookie(frontend, targetUrl, urls, name) {
for (const url of urls) {
const setQuery = r.firstPartyIsolate
? {
- url: url,
- name: name,
- value: cookie.value,
- secure: true,
- firstPartyDomain: new URL(url).hostname,
- }
+ url: url,
+ name: name,
+ value: cookie.value,
+ secure: true,
+ firstPartyDomain: new URL(url).hostname,
+ }
: {
- url: url,
- name: name,
- value: cookie.value,
- secure: true,
- expirationDate: cookie.expirationDate,
- }
+ url: url,
+ name: name,
+ value: cookie.value,
+ secure: true,
+ expirationDate: cookie.expirationDate,
+ }
browser.cookies.set(setQuery, () => browser.storage.local.set({ [`${frontend}_${name}`]: cookie }, () => resolve()))
}
break
@@ -383,20 +383,20 @@ function getCookiesFromStorage(frontend, urls, name) {
for (const url of urls) {
let query = r.firstPartyIsolate
? {
- url: url,
- name: cookie.name,
- value: cookie.value,
- secure: true,
- expirationDate: null,
- firstPartyDomain: new URL(url).hostname,
- }
+ url: url,
+ name: cookie.name,
+ value: cookie.value,
+ secure: true,
+ expirationDate: null,
+ firstPartyDomain: new URL(url).hostname,
+ }
: {
- url: url,
- name: cookie.name,
- value: cookie.value,
- secure: true,
- expirationDate: cookie.expirationDate,
- }
+ url: url,
+ name: cookie.name,
+ value: cookie.value,
+ secure: true,
+ expirationDate: cookie.expirationDate,
+ }
browser.cookies.set(query)
}
})
@@ -405,97 +405,26 @@ function getCookiesFromStorage(frontend, urls, name) {
function getPreferencesFromToken(frontend, targetUrl, urls, name, endpoint) {
return new Promise(resolve => {
browser.storage.local.get("firstPartyIsolate", r => {
- let query
- if (!r.firstPartyIsolate) query = { url: protocolHost(targetUrl), name: name }
- else
- query = {
- url: protocolHost(targetUrl),
- name: name,
- firstPartyDomain: null,
- }
- browser.cookies.getAll(query, async cookies => {
- for (const cookie of cookies)
- if (cookie.name == name) {
- const setQuery = r.firstPartyIsolate
- ? {
- url: targetUrl,
- name: name,
- value: cookie.value,
- secure: true,
- firstPartyDomain: new URL(targetUrl).hostname,
- }
- : {
- url: targetUrl,
- name: name,
- value: cookie.value,
- secure: true,
- expirationDate: cookie.expirationDate,
- }
- console.log(toString(targetUrl))
- const http = new XMLHttpRequest();
- http.open("GET", targetUrl + endpoint)
- http.setRequestHeader("Cookie", name + "=" + cookie.value)
- http.send(null)
- const preferences = http.responseText
- //console.log(preferences)
-
-
- browser.cookies.set(setQuery, () => browser.storage.local.set({ [`${frontend}_${name}`]: preferences }, () => resolve()))
- break
- }
- resolve()
- })
+ const http = new XMLHttpRequest();
+ const url = `${targetUrl}${endpoint}`
+ http.open("GET", url, false)
+ http.setRequestHeader("Cookie", `${name}=${cookie.value}`)
+ http.send(null)
+ const preferences = JSON.parse(http.responseText)
+ let formdata = new FormData();
+ for (var key in preferences) formdata.append(key, preferences[key]);
+ for (const url of urls) {
+ const http = new XMLHttpRequest();
+ http.open("POST", `${url}/settings/stay`, false)
+ http.send(null)
+ }
+ resolve()
+ return
})
})
}
-function setPreferencesFromToken(frontend, urls, name) {
- let key = `${frontend}_${name}`
- let formdata = ""
- browser.storage.local.get(key, r => {
- //console.log(r[key])
- const preferences = JSON.parse(r[key])
- if (preferences === undefined) return
- for (const prefName of names(preferences)) {
- if (formdata != "") {
- formdata += "&"
- }
- formdata += prefName + "=" + preferences[prefName]
- }
- for (const url of urls) {
-
- const http = new XMLHttpRequest();
- http.open("POST", url + "/settings")
- http.send(formdata)
-
-
-
-
-
- /*
- let query = r.firstPartyIsolate
- ? {
- url: url,
- name: cookie.name,
- value: cookie.value,
- secure: true,
- expirationDate: null,
- firstPartyDomain: new URL(url).hostname,
- }
- : {
- url: url,
- name: cookie.name,
- value: cookie.value,
- secure: true,
- expirationDate: cookie.expirationDate,
- }
- browser.cookies.set(query)
- */
- }
- })
-}
-
function copyRaw(test, copyRawElement) {
return new Promise(resolve => {
browser.tabs.query({ active: true, currentWindow: true }, async tabs => {
@@ -612,12 +541,12 @@ function switchInstance(test) {
}
function latency(name, frontend, document, location) {
- let latencyElement = document.getElementById(`latency-${frontend}`)
- let latencyLabel = document.getElementById(`latency-${frontend}-label`)
+ let latencyElement = document.getElementById(`latency - ${frontend} `)
+ let latencyLabel = document.getElementById(`latency - ${frontend} -label`)
latencyElement.addEventListener("click", async () => {
let reloadWindow = () => location.reload()
latencyElement.addEventListener("click", reloadWindow)
- let key = `${name}Redirects`
+ let key = `${name} Redirects`
browser.storage.local.get(key, r => {
let redirects = r[key]
const oldHtml = latencyLabel.innerHTML
@@ -641,7 +570,6 @@ export default {
copyCookie,
getCookiesFromStorage,
getPreferencesFromToken,
- setPreferencesFromToken,
switchInstance,
copyRaw,
unify,