// ==UserScript== // @name Replace "available" with "securable" in trade links // @namespace http://tampermonkey.net/ // @version 1.3 // @description Replaces "available" with "securable" ONLY in trade button hrefs on poe.ninja // @author deepseek // @match https://poe.ninja/* // @match http://poe.ninja/* // @grant none // @run-at document-end // @license MIT // @downloadURL https://update.greasyfork.icu/scripts/571669/Replace%20%22available%22%20with%20%22securable%22%20in%20trade%20links.user.js // @updateURL https://update.greasyfork.icu/scripts/571669/Replace%20%22available%22%20with%20%22securable%22%20in%20trade%20links.meta.js // ==/UserScript== (function() { 'use strict'; function fixTradeLinks() { // Find all trade buttons/links (they have hrefs containing pathofexile.com/trade) const tradeLinks = document.querySelectorAll('a[href*="pathofexile.com/trade"]'); let fixedCount = 0; tradeLinks.forEach(link => { let href = link.getAttribute('href'); if (href && href.includes('available')) { const newHref = href.replace(/available/g, 'securable'); if (newHref !== href) { link.setAttribute('href', newHref); fixedCount++; } } }); if (fixedCount > 0) { console.log(`✅ Fixed ${fixedCount} trade links: replaced "available" with "securable"`); } } // Run initially fixTradeLinks(); // Run after short delays for dynamically loaded content setTimeout(fixTradeLinks, 1000); setTimeout(fixTradeLinks, 2000); setTimeout(fixTradeLinks, 3000); setTimeout(fixTradeLinks, 5000); // Watch for new trade links being added const observer = new MutationObserver(function(mutations) { let shouldCheck = false; mutations.forEach(function(mutation) { if (mutation.addedNodes.length > 0) { mutation.addedNodes.forEach(node => { if (node.nodeType === Node.ELEMENT_NODE) { if (node.tagName === 'A' || node.querySelectorAll) { shouldCheck = true; } } }); } }); if (shouldCheck) { fixTradeLinks(); } }); if (document.body) { observer.observe(document.body, { childList: true, subtree: true }); } console.log('🔄 Trade link fixer active on poe.ninja'); })();