-
Notifications
You must be signed in to change notification settings - Fork 0
/
options.js
59 lines (49 loc) · 1.38 KB
/
options.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
/* global hostBlacklist, setBlocked, getBlockedFromStorage */
function populateHardcodedList() {
const container = document.getElementById('list-hardcoded');
hostBlacklist.forEach((url) => {
const elem = document.createElement('div');
const link = document.createElement('a');
link.textContent = url;
link.href = 'http://' + url;
link.target = '_blank';
elem.appendChild(link);
container.appendChild(elem);
});
}
function populateList() {
const container = document.getElementById('list');
const removeAllButton = document.getElementById('remove-all');
removeAllButton.onclick = (event) => {
console.log('here');
event.preventDefault();
setBlocked([]).then(
() => window.location.reload()
);
};
getBlockedFromStorage().then((urls) => {
urls.forEach((url) => {
const elem = document.createElement('div');
const link = document.createElement('a');
link.textContent = url;
link.href = 'http://' + url;
link.target = '_blank';
const button = document.createElement('a');
button.className = 'remove-btn';
button.textContent = 'remove';
button.onclick = (event) => {
event.preventDefault();
setBlocked(
urls.filter((u) => u !== url)
).then(
() => window.location.reload()
);
};
elem.appendChild(button);
elem.appendChild(link);
container.appendChild(elem);
});
});
}
populateHardcodedList();
populateList();