-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUserscript.json
More file actions
79 lines (72 loc) · 2.21 KB
/
Userscript.json
File metadata and controls
79 lines (72 loc) · 2.21 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
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
// ==UserScript==
// @name OPS de-colourise Next Userclass
// @version 1.0
// @description A modification of RED de-colourise Next Userclass by Chameleon to work on OPS
// @author Fluff663
// @include http*://*orpheus.network/user.php?id=*
// @grant none
// @namespace https://github.com/Fluff663
// ==/UserScript==
(function() {
'use strict';
var progressDiv=document.getElementsByClassName('box_userinfo_nextclass');
if(progressDiv.length==0)
return;
progressDiv=progressDiv[0];
var hideCompleted=window.localStorage.classProgressShowComplete != "false";
var lis=progressDiv.getElementsByTagName('li');
hideShow(lis, hideCompleted);
for(var i=0; i<lis.length; i++)
{
var sp=lis[i].getElementsByTagName('span')[0];
if(!sp)
continue;
var c=sp.getAttribute('class');
sp.setAttribute('class', c+' nocolor');
}
var a=document.createElement('a');
progressDiv.firstElementChild.appendChild(document.createTextNode(' ('));
progressDiv.firstElementChild.appendChild(a);
progressDiv.firstElementChild.appendChild(document.createTextNode(')'));
a.innerHTML = (hideCompleted ? 'Show':'Hide')+' completed';
a.href='javascript:void(0);';
a.addEventListener('click', toggleCompleted.bind(undefined, a, lis), false);
var style=document.createElement('style');
document.head.appendChild(style);
style.innerHTML='.nocolor { color:'+getComputedStyle(document.body).color+' !important;}';
})();
function toggleCompleted(a, lis)
{
var hideCompleted=window.localStorage.classProgressShowComplete != "false";
if(hideCompleted)
{
window.localStorage.classProgressShowComplete = "false";
a.innerHTML='Hide completed';
}
else
{
window.localStorage.classProgressShowComplete = "true";
a.innerHTML='Show completed';
}
hideShow(lis, !hideCompleted);
}
function hideShow(lis, hideCompleted)
{
for(var i=0; i<lis.length; i++)
{
var li=lis[i];
if(hideCompleted && li.innerHTML.indexOf('class="tooltip r20"')!=-1)
{
li.style.display='none';
}
else
if(hideCompleted && li.innerHTML.indexOf('class="tooltip r10 nocolor"')!=-1)
{
li.style.display='none';
}
else
{
li.style.display='';
}
}
}