// ==UserScript== // @name PSA.pm Open All Posts // @namespace tuktuk3103@gmail.com // @description Auto Clicks PSA.pm Post Buttons // @include *://psa.*/tv-show/* // @include *://psarips.com/tv-show/* // @run-at document-start // @version 1.06 // @grant none // @icon https://psa.re/wp-content/uploads/2021/10/cropped-PS-ICO-192x192.png // @downloadURL https://update.greasyfork.icu/scripts/449045/PSApm%20Open%20All%20Posts.user.js // @updateURL https://update.greasyfork.icu/scripts/449045/PSApm%20Open%20All%20Posts.meta.js // ==/UserScript== (function ClickPSA() { var q, s; // Include menus to select your favourite quality and season window.addEventListener("DOMContentLoaded", function() { document.querySelector("h1.entry-title").insertAdjacentHTML('afterend', '

                
Choose your link type:
    
    
'); function favQ() { var mylist = document.getElementById("myList"); q = mylist.options[mylist.selectedIndex].text; } // Now inject this function var script3 = document.createElement("script") script3.setAttribute("type","text/javascript") script3.innerHTML = favQ.toString() + "favQ();" script3.id = ("Q") document.head.appendChild(script3) function favS() { s = ""; var sNum = document.getElementById("sNum"); if (sNum.value<10&&sNum.value!="") s = "S0" + sNum.value; else if (sNum.value!="") s = "S" + sNum.value; else s = ""; } // Now inject this function var script4 = document.createElement("script") script4.setAttribute("type","text/javascript") script4.innerHTML = favS.toString() + "favS();" script4.id = ("S") document.head.appendChild(script4) function expandPosts() { var var1 = document.querySelectorAll('.sp-head:not(.unfolded'); for(var i = var1.length; i--; i>-1) { if(var1[i].textContent.includes(s)){ if(var1[i].textContent.includes(q)){ var evt1 = document.createEvent("MouseEvents"); evt1.initEvent("click", true, true); var1[i].dispatchEvent(evt1); } } } } // Now inject this function var script1 = document.createElement("script") script1.setAttribute("type","text/javascript") script1.innerHTML = expandPosts.toString() + "expandPosts();" script1.id = ("unfoldPosts") document.head.appendChild(script1) // Include button in right corner to expand posts var node1 = document.createElement("div"); node1.setAttribute("style","position: fixed;" + "bottom: 0;" + "right: 28px;" + "cursor: pointer;" + "border: 1px solid #313131;" + "border-top-left-radius: 5px;" + "color: gold !important;" + "font-weight: 700;" + "background: #101000;" + "text-align: center;" + "font-size: 12px;" + "padding: 7px 15px;" + "z-index: 999999;"); node1.setAttribute("onclick", "expandPosts();"); node1.setAttribute("title", "Click here to expand posts"); node1.innerHTML = "Unfold"; node1.id = "unfold"; document.body.appendChild(node1); function clickLinks() { var var2 = document.querySelectorAll('.sp-body:not(.folded)'); const ddlCheckbox = document.querySelector('#ddl'); const torrentCheckbox = document.querySelector('#torrent'); for(var i = var2.length; i--; i>-1) { var evt2 = document.createEvent("MouseEvents"); evt2.initEvent("click", true, true); if (ddlCheckbox.checked) var2[i].getElementsByTagName('a')[0].dispatchEvent(evt2); var evt3 = document.createEvent("MouseEvents"); evt3.initEvent("click", true, true); if (ddlCheckbox.checked) if (var2[i].getElementsByTagName('a')[1].textContent.includes("Download")) var2[i].getElementsByTagName('a')[1].dispatchEvent(evt3); if (torrentCheckbox.checked) if (var2[i].getElementsByTagName('a')[1].textContent.includes("TORRENT")) var2[i].getElementsByTagName('a')[1].dispatchEvent(evt3); } } // Now inject this function var script2 = document.createElement("script") script2.setAttribute("type","text/javascript") script2.innerHTML = clickLinks.toString() + "clickLinks();" script2.id = ("exitLinks") document.head.appendChild(script2) // Include button in right corner to click links var node2 = document.createElement("div"); node2.setAttribute("style","position: fixed;" + "bottom: 0;" + "right: 128px;" + "cursor: pointer;" + "border: 1px solid #313131;" + "border-top-left-radius: 5px;" + "color: gold !important;" + "font-weight: 700;" + "background: #101000;" + "text-align: center;" + "font-size: 12px;" + "padding: 7px 15px;" + "z-index: 999999;"); node2.setAttribute("onclick", "clickLinks();"); node2.setAttribute("title", "Click here to click links"); node2.innerHTML = "Exit"; node2.id = "exit"; document.body.appendChild(node2); }); }());