about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorManeraKai <manerakai@protonmail.com>2023-12-10 22:51:47 +0300
committerManeraKai <manerakai@protonmail.com>2023-12-10 22:51:47 +0300
commit473e1965677508801d10f75f50bc5d5e70ddc8c7 (patch)
tree082f1df5d661cf758c53175e62774c4f1f2370a7 /src
parentMerge pull request #870 from syeopite/remove-debug-statements (diff)
parentModified Tumblr redirection https://github.com/libredirect/browser_extension/... (diff)
downloadlibredirect-473e1965677508801d10f75f50bc5d5e70ddc8c7.zip
Merge branch 'syeopite-master'
Diffstat (limited to 'src')
-rw-r--r--src/assets/javascripts/services.js25
-rw-r--r--src/config.json5
2 files changed, 21 insertions, 9 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}`
diff --git a/src/config.json b/src/config.json
index 13d5dc30..a99a3907 100644
--- a/src/config.json
+++ b/src/config.json
@@ -1006,8 +1006,9 @@
 				}
 			},
 			"targets": [
-				"^https?:\\/{2}(media\\.|blog\\.|assets\\.|static\\.)?tumblr\\.com\\/",
-				"^https?:\\/{2}[0-9]+\\.media\\.tumblr\\.com\\/"
+				"^https?:\\/{2}(media\\.|assets\\.|static\\.)?tumblr\\.com\\/",
+				"^https?:\\/{2}[0-9]+\\.media\\.tumblr\\.com\\/",
+				"^https?:\\/{2}(www\\.)?(.*)\\.tumblr.com\\/"
 			],
 			"name": "Tumblr",
 			"options": {