-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathScript.js
More file actions
55 lines (50 loc) · 2.04 KB
/
Script.js
File metadata and controls
55 lines (50 loc) · 2.04 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
chances = function(sel1, copPts, ents, nom, chc) {
var failChance = 1;
var enrolledFailChance = 1;
var toTest = $(sel1).length;
$(sel1).each(function() {
toCount = $(this).hasClass('is-faded')
var copiesAndPoints = $(this).find(copPts);
var copies = 1
if (copiesAndPoints.length > 1) {
copies = copiesAndPoints[0].innerText.replace( /[^0-9,]/g, '' ).replace( ',', '');
var points = copiesAndPoints[1].innerText.replace( /[^0-9,]/g, '' ).replace( ',', '');
} else {
points = copiesAndPoints[0].innerText.replace( /[^0-9,]/g, '' ).replace( ',', '');
}
var entriesText = $(this).find(ents);
var entries = entriesText[0].innerText.replace( /[^0-9,]/g, '' ).replace( ',', '');
var winchance = copies / entries * 100;
var winchancePerPoint = winchance / points;
if (winchance > 100) {
winchance = 100
} else {
if (toCount) {
enrolledFailChance *= (100-winchance)/100
} else {
failChance *= (100-winchance)/100
}
}
if (winchancePerPoint > 100) {
winchancePerPoint = 100
}
var toAddTo = $(this).find(nom);
toAddTo.append(' ['+Math.ceil(1000*winchance)/100+'‰, '+Math.ceil(1000*winchancePerPoint)/100 + '‰/P]');
toTest -= 1;
if (toTest == 0) {
toAddChance = $(chc);
if (enrolledFailChance == 1) {
toAddChance.append("<div> (est. "+Math.ceil(10000*(1-failChance))/100 + "% wins, no 100%'s)</div>");
} else {
toAddChance.append("<div> (est. "+Math.ceil(10000*(1-failChance))/100 + "% wins, "+Math.ceil(10000*(1-enrolledFailChance))/100+"% wins for enrolled; no 100%'s)</div>");
}
}
});
}
if (window.location.toString().includes("/giveaways/entered")) {
console.log('Giveaways tab, checking .table type')
chances('.table__row-inner-wrap', '.is-faded', '.table__column--width-small', '.table__column__heading', '.page__heading__breadcrumbs')
} else {
console.log('Frontpage, checking .giveaway type')
chances('.giveaway__row-inner-wrap', '.giveaway__heading__thin', '.giveaway__links span', '.giveaway__heading__name', '.page__heading__breadcrumbs')
}