-
Notifications
You must be signed in to change notification settings - Fork 0
/
content.js
77 lines (69 loc) · 2.16 KB
/
content.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
hidePosts();
function hidePosts(){
var posts = document.getElementsByClassName('username');
chrome.storage.local.get('blockedUserNames', function(result){
var storedValues = result.blockedUserNames;
for (var i = 0, l = posts.length; i < l; i++) {
var username = posts[i].innerHTML;
for (var j = 0, ll = storedValues.length; j < ll; j++) {
if(username == storedValues[j]){
var elementToHide = findAncestor(posts[i], 'comment');
if(elementToHide != null){
elementToHide.style.display = 'none';
}
}
}
}
});
}
chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
if (msg.action == 'refresh') {
//alert("Message recieved!");
hidePosts();
}
});
function findAncestor (el, cls) {
while ((el = el.parentElement) && !el.classList.contains(cls));
return el;
}
(
function ()
{
var newcss = '.pre { background: #f9f9f9; white-space: pre} blockquote { background: #f9f9f9; border-left: 10px solid #ccc; margin: 1.5em 10px; padding: 0.5em 10px; quotes: initial; } blockquote:before { color: #ccc; content: open-quote; font-size: 4em; line-height: 0.1em; margin-right: 0.25em; vertical-align: -0.4em; } blockquote p { display: inline; }';
if ('\v'=='v') /* ie only */
{
document.createStyleSheet().cssText = newcss;
} else
{
var tag = document.createElement('style');
tag.type = 'text/css';
document.getElementsByTagName('head')[0].appendChild(tag);
tag[ (typeof document.body.style.WebkitAppearance=='string') /* webkit only */ ? 'innerText' : 'innerHTML'] = newcss;
}
}
)();
(function (){
var t=document.getElementsByTagName('table')[0];
if(t == null) { return; }
chrome.storage.local.get('blockedUserNames', function(result){
var storedValues = result.blockedUserNames;
for(var i=0,r;r=t.rows[i];i++){
for(var j=0,c;c=r.cells[j];j++){
for (var v = 0, ll = storedValues.length; v < ll; v++) {
if(c.innerHTML.indexOf(storedValues[v])!=-1){r.style.display='none';}
}
}
}
var even = false;
for(var i=0,r;r=t.rows[i];i++){
if(r.style.display != 'none'){
if(even == true){
r.className = 'even';
}else{
r.className = 'odd';
}
even = !even;
}
}
});
})();