Skip to content

Commit e5a1f99

Browse files
committed
added referers to .torrent grabbing calls #314
1 parent 88edbdc commit e5a1f99

File tree

3 files changed

+15
-7
lines changed

3 files changed

+15
-7
lines changed

miscapis/background.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
7373
if(request.server) {
7474
server = request.server;
7575
}
76-
RTA.getTorrent(server, request.url, request.label, request.dir);
76+
RTA.getTorrent(server, request.url, request.label, request.dir, request.referer);
7777
sendResponse({});
7878
} else if(request.action == "getStorageData") {
7979
sendResponse(localStorage);

miscapis/content_rta.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,9 @@ function registerLinks(response) {
7272
showLabelDirChooser(response, url);
7373
}
7474
else {
75-
chrome.extension.sendRequest({"action": "addTorrent", "url": url, "label": undefined, "dir": undefined});
75+
var ref = new URL(window.location);
76+
ref.hash = '';
77+
chrome.extension.sendRequest({"action": "addTorrent", "url": url, "label": undefined, "dir": undefined, "referer": ref.toString()});
7678
}
7779
}
7880
});
@@ -164,7 +166,9 @@ function showLabelDirChooser(settings, url, theServer) {
164166
var targetLabel = (inputLabel=="")? ((selectedLabel==null)? "" : selectedLabel) : inputLabel;
165167
var targetDir = (inputDir=="")? ((selectedDir==null)? "" : selectedDir) : inputDir;
166168

167-
chrome.extension.sendRequest({"action": "addTorrent", "url": url, "label": targetLabel, "dir": targetDir, "server": server});
169+
var ref = new URL(window.location);
170+
ref.hash = '';
171+
chrome.extension.sendRequest({"action": "addTorrent", "url": url, "label": targetLabel, "dir": targetDir, "server": server, "referer": ref.toString()});
168172

169173
setNewSettings(settings, dirlist, labellist, targetDir, targetLabel, serverIndex);
170174

miscapis/functions.js

+8-4
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,17 @@ RTA.dispatchTorrent = function(server, data, name, label, dir) {
6060
}
6161

6262

63-
RTA.getTorrent = function(server, url, label, dir) {
63+
RTA.getTorrent = function(server, url, label, dir, referer) {
6464
if(url.substring(0,7) == "magnet:" || server.rutorrentalwaysurl) {
6565
RTA.dispatchTorrent(server, url, "", label, dir);
6666
} else {
6767
RTA.getTorrentLink = url;
6868

69-
fetch(url)
69+
fetch(url, {
70+
headers: {
71+
'Referer': referer
72+
}
73+
})
7074
.then(RTA.handleFetchError)
7175
.then(async function(response) {
7276
var name = "file.torrent";
@@ -182,7 +186,7 @@ RTA.genericOnClick = function(info, tab) {
182186

183187
if(serverId === -1) { // send to all servers
184188
for(var i in servers) {
185-
RTA.getTorrent(servers[i], info.linkUrl);
189+
RTA.getTorrent(servers[i], info.linkUrl, null, null, tab.url);
186190
}
187191
} else { // only one server specified
188192
var server = JSON.parse(localStorage.getItem("servers"))[serverId];
@@ -197,7 +201,7 @@ RTA.genericOnClick = function(info, tab) {
197201
chrome.tabs.sendRequest(tab.id, {"action": "showLabelDirChooser", "url": info.linkUrl, "settings": localStorage, "server": server});
198202
}
199203
else {
200-
RTA.getTorrent(server, info.linkUrl);
204+
RTA.getTorrent(server, info.linkUrl, null, null, tab.url);
201205
}
202206
}
203207
}

0 commit comments

Comments
 (0)