· 7 years ago · Feb 05, 2019, 06:00 AM
1// ==UserScript==
2// @name New Userscript
3// @namespace http://tampermonkey.net/
4// @version 0.1
5// @description try to take over the world!
6// @author You
7// @match https://www.surveymonkey.com/r/LYK8FXD
8// @grant none
9// ==/UserScript==
10
11function randEmail() {
12 let chrs = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890";
13 let len = Math.floor(Math.random()*20+6);
14 let ans = "@gmail.com";
15 for (let i=0;i<len;i++) {
16 ans = chrs.charAt(Math.floor(Math.random()*chrs.length))+ans;
17 }
18 return ans;
19}
20
21function shuffle(array) { // got this shuffle off of stackoverflow, thanks whoever it was
22 var currentIndex = array.length, temporaryValue, randomIndex;
23
24 // While there remain elements to shuffle...
25 while (0 !== currentIndex) {
26
27 // Pick a remaining element...
28 randomIndex = Math.floor(Math.random() * currentIndex);
29 currentIndex -= 1;
30
31 // And swap it with the current element.
32 temporaryValue = array[currentIndex];
33 array[currentIndex] = array[randomIndex];
34 array[randomIndex] = temporaryValue;
35 }
36
37 return array;
38}
39
40function getpage() {
41 let p = document.getElementsByClassName("page-title user-generated")[0].innerText;
42 return p.charAt(p.length-1);
43};
44let page;
45try {
46 page = getpage();
47}
48catch (e) {
49 location.replace("https://www.surveymonkey.com/r/LYK8FXD");
50};
51if (page=='1') {
52 document.getElementsByClassName("radio-button-label-text question-body-font-theme user-generated")[Math.floor(Math.random()*8+1)].click();
53}
54else if (page=='2' || page=='3') {
55 // radio buttons
56 let btns = shuffle(Array.prototype.slice.call(document.getElementsByClassName("radio-button-label-text question-body-font-theme user-generated")));
57 for (let i=0;i<btns.length;i++) {
58 if (!btns[i].innerText.startsWith("Other")) {
59 btns[i].click();
60 }
61 }
62 if (page=='3') {
63 document.getElementsByClassName("radio-button-label-text question-body-font-theme user-generated")[15].click();
64 document.getElementsByClassName("text other-answer-text")[0].value="fairfight";
65 }
66 // checkboxes
67 let btns2 = document.getElementsByClassName("answer-label checkbox-button-label no-touch touch-sensitive clearfix");
68 for (let i=0;i<btns2.length;i++) {
69 if (!btns2[i].innerText.startsWith("Other") && Math.random()<.5) {
70 btns2[i].click();
71 }
72 }
73 // emoji buttons
74 btns = shuffle(Array.prototype.slice.call(document.getElementsByClassName("smf-icon emoji-border")));
75 for (let i=0;i<btns.length;i++) {
76 btns[i].click();
77 document.getElementsByClassName("smf-icon emoji-border")[28+Math.floor(Math.random()*2)].click();
78 }
79 // textboxes
80 let texts = document.getElementsByClassName("textarea");
81 if (page=='2') {
82 texts[0].value="fairfight";
83 }
84 if (page=='3') {
85 texts[0].value="Chaos raids because there is no fairfight";
86 texts[1].value="Defeating foes with fairfight quickly";
87 texts[2].value="Fairfight";
88 texts[3].value="The existence of features intentionally designed to make the game less enjoyable, such as fairfight";
89 }
90}
91else if (page=="e") {
92 let texts = document.getElementsByClassName("textarea");
93 texts[0].value="Could you please give everyone who thought fairfight was a good idea a pay cut?";
94 texts[1].value="REMOVE FAIRFIGHT";
95 texts[2].value="REMOVE FAIRFIGHT";
96 document.getElementsByClassName("text medium")[0].value=randEmail();
97}
98let submits=document.getElementsByClassName("btn small survey-page-button user-generated notranslate");
99submits[submits.length-1].click();