-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathbackground.js
48 lines (46 loc) · 1.69 KB
/
background.js
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
chrome.extension.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.name == "fetchPage") {
var xhr = new XMLHttpRequest();
xhr.open('GET', "https://www.googleapis.com/youtube/v3/videos?id=" + request.videoid + "&part=snippet,contentDetails,statistics&key=AIzaSyBUd0hFaYWyHwbNYKobR3af9utLz4zn6j4", true);
xhr.onreadystatechange = function (evt) {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
console.log("Successful.");
sendResponse({response: JSON.parse(xhr.responseText), videoid: request.videoid});
} else {
console.log("Hmm. Failed for " + request.videoid + ".");
}
}
}
xhr.send();
return true;
} else if (request.name == "getOptions") {
var defaults = {
"textlinks": 1,
"imglinks": 0,
"embed": 1,
"embedleft": 0,
"showEmbeddedPlayer": 0,
"replacename": 1,
"tooltip": 1,
"timestamp": 0,
"timestamptooltip": 1,
"restrictedicon": 1,
};
var resp = {};
for (var key in defaults) {
if (!(key in localStorage)) {
localStorage[key] = defaults[key];
}
resp[key] = localStorage[key];
}
sendResponse(resp);
} else if (request.name == "setOptions") {
var options = request.options;
for (var key in options) {
localStorage[key] = options[key];
}
}
}
);