-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpopup-dev.js
112 lines (97 loc) · 3.18 KB
/
popup-dev.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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
'use strict';
const fileInput = document.getElementById('inputfile');
let listname = "";
let filearr = "";
fileInput.addEventListener('change', (event) => {
const files = event.target.files;
const fr=new FileReader();
fr.onload = () =>{
let data = fr.result;
filearr = data.split('\n');
listname = filearr[0];
document.getElementById('listname').value = listname;
}
fr.readAsText(files[0]);
});
document.getElementById('bstarti').addEventListener("click",()=>{
if(filearr != "") {
chrome.runtime.sendMessage({
type: "startimport",
data: {
arr: filearr,
name: listname
}
});
console.log("message sent")
} else {
alert("Err: No file input")
}
},false)
function grey(id){
document.getElementById(id).classList.add("disabled");
}
function ungrey(id){
document.getElementById(id).classList.remove("disabled");
}
async function sendMessageToActiveTab(message) {
const [tab] = await chrome.tabs.query({active: true, lastFocusedWindow: true});
const response = await chrome.tabs.sendMessage(tab.id, message);
// do something with response here, not outside the function
return { id: tab.id, response: response };
}
document.addEventListener("DOMContentLoaded", () => {
function update() {
sendMessageToActiveTab({
type: "update",
data: {
auto: document.getElementById("cauex").checked,
title: document.getElementById("cexti").checked
}
});
}
document.getElementById('bsdown').addEventListener("click", async (e) => {
let res = await sendMessageToActiveTab({
type: "scroll",
data: {}
});
chrome.action.setBadgeText({ tabId: res.id, text: "0" });
async function updatebadge() {
let resp = await sendMessageToActiveTab({ type: "count", data: {} });
chrome.action.setBadgeText({ tabId: resp.id, text: resp.response.text });
console.log(resp.response.text)
if (resp.response.scroll == 'false') {
clearInterval(updater);
}
}
const updater = setInterval(updatebadge, 1000);
},false)
document.getElementById('beplay').addEventListener("click",(e)=>{
sendMessageToActiveTab({
type: "exportplay",
data: {}
});
},false)
document.getElementById('listname').addEventListener("change",(e)=>{
listname = document.getElementById('listname').value;
}, false)
document.getElementById('bstopi').addEventListener("click", ()=>{
chrome.runtime.sendMessage({
type: "stopimport",
data: {}
});
}, false)
document.getElementById('cexti').addEventListener("change", update, false);
document.getElementById('cauex').addEventListener("change", update, false);
})
chrome.runtime.onMessage.addListener((obj, sender, res)=>{
const {
type,
data
} = obj;
if(type === "notsupported"){
alert("Your browser is not supported.")
}
if(type === "importinactive") {
alert("Import is not active.")
}
})