// ==UserScript== // @name GGn Trump Helper (edited) // @namespace none // @description Trump Helper // @version 2 // @author ZeDoCaixao, ingts // @match https://gazellegames.net/torrents.php?id=* // @downloadURL none // ==/UserScript== const default_comment = 'new version' const comment_presets = [ ] function handlePlClick(e) { e.preventDefault(); e.currentTarget.classList.toggle("rp_good"); e.currentTarget.style.removeProperty('color') document.querySelectorAll('.rp_good').forEach(link => { link.style.color = "red"; }); let urls = ""; document.querySelectorAll('.rp_good').forEach(link => { urls += " https://gazellegames.net/" + link.getAttribute("href"); }); document.querySelector("#rp_helper #sitelink").value = urls; } const allPermalinks = document.querySelectorAll('a[title="Permalink"]') document.querySelectorAll('a[title="Report"]').forEach(rp => { const torrent_id = rp.getAttribute("href").replace(/.*&id=/, '').replace("&type=link", ''); const token = new Date().getTime(); rp.insertAdjacentHTML('afterend', ` | TP`); document.querySelector(`#rp_${torrent_id}`).addEventListener('click', function () { const rp_helper = document.getElementById('rp_helper') if (rp_helper) { rp_helper.remove(); allPermalinks.forEach(pl => { pl.removeEventListener('click', handlePlClick) pl.classList.remove('rp_good') pl.style.removeProperty('color') }) } this.closest("tr").insertAdjacentHTML('afterend', ` ${comment_presets.length > 0 ? '
' : ''}
`); const textarea = document.getElementById('extra') textarea.value = default_comment const presetsContainer = document.getElementById('rp_helper_presets') comment_presets.forEach(preset => { let button = document.createElement('button') button.type = 'button' button.textContent = preset[0] button.onclick = () => textarea.value = preset[1] presetsContainer.append(button) }) allPermalinks.forEach(pl => { pl.addEventListener('click', handlePlClick) }) }); });