diff options
author | ManeraKai <manerakai@protonmail.com> | 2023-12-10 22:31:37 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2023-12-10 22:31:37 +0300 |
commit | ab46d1a7d4f738f2924557493aad4f2cd9ac0eff (patch) | |
tree | 98f1692d373599730b86c798cd8581d4cb96d898 /src/assets/javascripts/services.js | |
parent | Merge pull request #870 from syeopite/remove-debug-statements (diff) | |
parent | Add Tumblr blog redirects for Priviblur (diff) | |
download | libredirect-ab46d1a7d4f738f2924557493aad4f2cd9ac0eff.zip |
Merge branch 'master' of https://github.com/syeopite/browser_extension into syeopite-master
Diffstat (limited to 'src/assets/javascripts/services.js')
-rw-r--r-- | src/assets/javascripts/services.js | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index a9a87830..c03f7c22 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -569,19 +569,36 @@ function redirect(url, type, initiator, forceRedirection, incognito) { return `${randomInstance}?url=${encodeURIComponent(url.href)}` } case "priviblur": { - if (url.hostname.startsWith("blog")) - return `${randomInstance}/blog${url.pathname}${url.search}` + // www.tumblr.com + if (url.hostname === "www.tumblr.com") + return `${randomInstance}${url.pathname}${url.search}`; + // assets.tumblr.com if (url.hostname.startsWith("assets")) - return `${randomInstance}/assets${url.pathname}${url.search}` + return `${randomInstance}/tblr/assets${url.pathname}${url.search}`; + // static.tumblr.com if (url.hostname.startsWith("static")) - return `${randomInstance}/static${url.pathname}${url.search}` + return `${randomInstance}/tblr/static${url.pathname}${url.search}`; - const reg = /^([0-9]+)\.media\.tumblr\.com/.exec(url.hostname) + // *.media.tumblr.com + const reg = /^([0-9]+)\.media\.tumblr\.com/.exec(url.hostname); if (reg) - return `${randomInstance}/media/${reg[1]}${url.pathname}${url.search}` - return `${randomInstance}${url.pathname}${url.search}` + return `${randomInstance}/tblr/media/${reg[1]}${url.pathname}${url.search}`; + + // <blog>.tumblr.com + const blogregex = /^(www.)?([a-z\d]{1}[a-z\d-]{0,30}[a-z\d]{0,1})\.tumblr\.com/.exec(url.hostname); + const blog_name = blogregex[2]; + + if (blogregex) + // Under the <blog>.tumblr.com domain posts are under a /post path + if (url.pathname.startsWith("/post")) { + return `${randomInstance}/${blog_name}${url.pathname.slice(5)}${url.search}`; + } else { + return `${randomInstance}/${blog_name}${url.pathname}${url.search}`; + } + + return `${randomInstance}${url.pathname}${url.search}`; } default: { return `${randomInstance}${url.pathname}${url.search}` |