// ==UserScript== // @name [New] Coinpayu.com // @namespace https://greasyfork.org/users/1162863 // @version 3.1 // @description Open and close Framed and Frameless Ads // @author Andrewblood // @match *://*.coinpayu.com/* // @exclude *://*.coinpayu.com/login // @icon https://www.google.com/s2/favicons?sz=64&domain=coinpayu.com // @grant window.close // @antifeature referral-link Referral-Link is in this Script integrated. // @license Copyright Andrewblood // @downloadURL none // ==/UserScript== /* INFOS At first the Script is only tested with an active Membership. (update comes) Go to the Ad page and it start after reloading the page. Framed Ads: It opens the first aviable site in the list and stay on it, when one site is completed it starts with the Next. When all sites completed it goes to Framless Ads. Frameless Ads: It opens and close site by site. When all sites completed it close coinpayu */ (function() { 'use strict'; var oldfunction = unsafeWindow.open; var windowName = ""; function newFunction(params1, params2) { if (!params2 || params2 == "_blank") { windowName = "popUpWindow"; } else { windowName = params2; } return oldfunction(params1, windowName); }; unsafeWindow.open = newFunction; unsafeWindow.onbeforeunload = function() { unsafeWindow.open('', windowName).close(); }; if (window.location.href.includes("register")) { if (!window.location.href.includes("Andrewblood")) { window.location.replace("https://www.coinpayu.com/register?r=Andrewblood"); } } setTimeout(function() { document.querySelector("#toViewAds").click(); setTimeout(function() { document.querySelector("#viewads > div.nav-head.dashboard-actived > p").click(); }, 500); }, 1000 * 2); setTimeout(function() { function processNextFramelessElement() { // Alle relevanten Elemente auswählen var elements = document.querySelectorAll('.clearfix.ags-list-box:not(.gray-all.clearfix.ags-list-box)'); // Wenn Elemente vorhanden sind if (elements.length > 0) { // Erstes Element auswählen var firstElement = elements[0].querySelector('.text-overflow.ags-description > span'); var timeElement = elements[0].querySelector('.ags-detail-time span'); var urlElement = elements[0].querySelector('.text-overflow.ags-description'); var url = urlElement.getAttribute('title'); var time = parseInt(timeElement.textContent); console.log('Open ' + url + ' for ' + time + ' seconds.'); urlElement.removeAttribute('title'); if (firstElement) { firstElement.click(); unsafeWindow.open('', windowName).close(); // 2 Sekunden warten bevor der Alert geprüft wird setTimeout(function() { var interval = setInterval(function() { var alertElementGreen = document.querySelector(".alert-div.alert-green"); var alertElementRed = document.querySelector(".alert-div.alert-red"); if (alertElementGreen) { clearInterval(interval); setTimeout(function() { // Seite nicht neu laden, sondern die Funktion rekursiv für das nächste Element aufrufen processNextFramelessElement(); }, 3000); // 2000 Millisekunden (2 Sekunden) Verzögerung } else if (alertElementRed) { clearInterval(interval); // Entfernt das aktuelle Element, falls ein roter Alert erscheint elements[0].remove(); setTimeout(function() { // Nächstes Element verarbeiten processNextFramelessElement(); }, 7000); // 2000 Millisekunden (2 Sekunden) Verzögerung } }, 1000); }, 3000); // 2000 Millisekunden (2 Sekunden) Verzögerung } } else { // Wenn keine Elemente mehr vorhanden sind, das Fallback ausführen document.querySelector("#viewads > div:nth-child(2) > p").click(); } } // Startet den Prozess processNextFramelessElement(); }, 1000 * 4); setTimeout(function() { if (document.querySelector("#app > div > div.coinpayu-dashboard-content > div.main-panel > div > div > h6").innerText.includes("Framed Ads")) { function processNextFramedElement() { // Alle relevanten Elemente auswählen var elements = document.querySelectorAll('.clearfix.ags-list-box:not(.gray-all.clearfix.ags-list-box)'); // Wenn Elemente vorhanden sind if (elements.length > 0) { // Erstes Element auswählen var firstElement = elements[0].querySelector('.text-overflow.ags-description > span'); var timeElement = elements[0].querySelector('.ags-detail-time span'); var urlElement = elements[0].querySelector('.text-overflow.ags-description'); var url = urlElement.getAttribute('title'); var time = parseInt(timeElement.textContent); console.log('Open ' + url + ' for ' + time + ' seconds.'); urlElement.removeAttribute('title'); if (firstElement) { firstElement.click(); unsafeWindow.open('', windowName).close(); // 2 Sekunden warten bevor der Alert geprüft wird setTimeout(function() { var interval = setInterval(function() { var alertElementGreen = document.querySelector(".alert-div.alert-green"); var alertElementRed = document.querySelector(".alert-div.alert-red"); if (alertElementGreen) { clearInterval(interval); setTimeout(function() { // Seite nicht neu laden, sondern die Funktion rekursiv für das nächste Element aufrufen processNextFramedElement(); }, 3000); // 2000 Millisekunden (2 Sekunden) Verzögerung } else if (alertElementRed) { clearInterval(interval); // Entfernt das aktuelle Element, falls ein roter Alert erscheint elements[0].remove(); setTimeout(function() { // Nächstes Element verarbeiten processNextFramedElement(); }, 7000); // 2000 Millisekunden (2 Sekunden) Verzögerung } }, 1000); }, 3000); // 2000 Millisekunden (2 Sekunden) Verzögerung } } else { // Wenn keine Elemente mehr vorhanden sind, das Fallback ausführen window.close(); } } // Startet den Prozess processNextFramedElement(); } }, 1000 * 6); if (window.location.href.includes("coinpayu.com/dashboard/view_active?id=")) { var intervalId = setInterval(function() { var waittime = document.querySelector("#app > div > div > div > div > div"); if (waittime && waittime.style.width === "100%") { clearInterval(intervalId); setTimeout(function() { window.close(); }, 500); } }, 100); } })();