-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcontent.js
More file actions
50 lines (50 loc) · 1.67 KB
/
content.js
File metadata and controls
50 lines (50 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
chrome.runtime.sendMessage({
todo: "showPageAction"
});
/**
*
* @param {string} v_url
* @returns {string};
*/
function get_video_id(v_url) {
if (v_url.indexOf("watch") == -1) {
return "-1";
}
var i = v_url.indexOf("v=");
if (i == -1) return "-1";
var ans = "";
for (i = i + 2; i < v_url.length; i++) {
if (v_url[i] == '?' || v_url[i] == '/' || v_url[i] == '&') {
return ans;
}
ans += v_url[i];
}
return ans;
}
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
if (request.todo == "unblockVideo") {
var page_href = window.location.href;
var myNode = this.document.getElementById("player-container-outer");
if (myNode == undefined || myNode.innerHTML == "") {
var myNode = this.document.getElementById("player-container");
}
myNode = myNode.parentNode;
var player_height = myNode.clientHeight;
var player_width = myNode.clientWidth;
new_code = '<iframe class="unblocked" width="' + player_width + '" height="' + player_height + '" src="https://www.youtube.com/embed/' + get_video_id(page_href) + '" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>';
var new_player = this.document.createElement("span");
new_player.innerHTML = new_code;
while (myNode.firstChild) {
myNode.removeChild(myNode.firstChild);
}
new_player.id = "roflancheckme";
myNode.appendChild(new_player);
myNode.id = "new_player";
}
if (request.todo == "reloadPage") {
if (document.getElementById("roflancheckme").innerHTML != "" &&
document.getElementById("roflancheckme").innerHTML != undefined) {
document.location.reload(true);
}
}
});