-
Notifications
You must be signed in to change notification settings - Fork 0
/
RevealIGgifts.user.js
87 lines (77 loc) · 2.69 KB
/
RevealIGgifts.user.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
// ==UserScript==
// @name RevealIGgifts
// @namespace KlappPc_RevealIGgifts
// @include https://www.indiegala.com/gift?gift_id*
// @version 1
// @grant none
// ==/UserScript==
var needsConfirmDialog=true;
var realConfirm;
function switchConfirmDialog(){
if(needsConfirmDialog){
realConfirm=window.confirm;
window.confirm=function(){
return true;
};
needsConfirmDialog=false;
textConfirm.data="Enable Confirms";
}else{
textConfirm.data="Disable Confirms";
needsConfirmDialog=true;
window.confirm=realConfirm;
}
}
function Reveal(){
if(needsConfirmDialog){switchConfirmDialog();}
try{
var internalI=0;
var nodes=document.getElementsByClassName("span-key steam-btn");
for(i=0;i<nodes.length;i++){
if(nodes[i].childElementCount==1){
}
if(nodes[i].childElementCount==8){
setTimeout(function(i){nodes[i].getElementsByTagName('a')[1].click();},internalI*3000,i);
internalI++;
}
}
}catch(err){alert(err.message);}
}
function Gather(){
try{
var string="";
var nodes=document.getElementsByClassName("span-key steam-btn");
for(i=0;i<nodes.length;i++){
if(nodes[i].childElementCount==1){
var node=nodes[i].getElementsByTagName('input');
if(node.length==1){
string= string+ nodes[i].getElementsByTagName('input')[0].value+",";
}
}
if(nodes[i].childElementCount==8){
}
}
string=string.substring(0, string.length-1);
alert(string);
}catch(err){alert(err.message);}
}
var textSpace = document.createTextNode(' | ');
var textSpace2 = document.createTextNode(' | ');
var btnConfirm = document.createElement('BUTTON'); // Create a <button> element
var textConfirm = document.createTextNode('Disable Confirms'); // Create a text node
btnConfirm.appendChild(textConfirm);
btnConfirm.onclick = switchConfirmDialog;
var btnReveal = document.createElement('BUTTON'); // Create a <button> element
var textReveal = document.createTextNode('Reveal all codes'); // Create a text node
btnReveal.appendChild(textReveal);
btnReveal.onclick = Reveal;
var btnGather = document.createElement('BUTTON'); // Create a <button> element
var textGather = document.createTextNode('Gather all codes'); // Create a text node
btnGather.appendChild(textGather);
btnGather.onclick = Gather;
parent2 = document.getElementById('library-contain'); // Append the text to <button>
after=parent2.children[0];
parent2.insertBefore(btnConfirm, after); // Append <button> to <body>
parent2.insertBefore(textSpace, after); // Append <button> to <body>
parent2.insertBefore(btnReveal, after); // Append <button> to <body>
parent2.insertBefore(textSpace2, after); // Append <button> to <body>
parent2.insertBefore(btnGather, after); // Append <button> to <body>