diff options
Diffstat (limited to 'src/assets/javascripts')
-rw-r--r-- | src/assets/javascripts/services.js | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/assets/javascripts/services.js b/src/assets/javascripts/services.js index a9a87830..b1b0fdaa 100644 --- a/src/assets/javascripts/services.js +++ b/src/assets/javascripts/services.js @@ -569,19 +569,30 @@ 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}` + if (url.hostname == "www.tumblr.com") + return `${randomInstance}${url.pathname}${url.search}` if (url.hostname.startsWith("assets")) - return `${randomInstance}/assets${url.pathname}${url.search}` + return `${randomInstance}/tblr/assets${url.pathname}${url.search}` 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) + const reg = /^([0-9]+)\.media\.tumblr\.com/.exec(url.hostname) // *.media.tumblr.com 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}` + + const blogregex = /^(?:www\.)?([a-z\d]+)\.tumblr\.com/.exec(url.hostname) // <blog>.tumblr.com + if (blogregex) { + const blog_name = blogregex[1]; + // 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}` |