FinecoBank.com: Hide Annoying popups (the warning-disconnection popup)

This script hides the annoying popups (the warning-disconnection popu) that are shown in the web page.

// ==UserScript==
// @name           FinecoBank.com: Hide Annoying popups (the warning-disconnection popup)
// @name:it        FinecoBank.com: Nasconde i popup fastidiosi (il popup di avviso disconnessione)
// @description    This script hides the annoying popups (the warning-disconnection popu) that are shown in the web page.
// @description:it Questo script nasconde i popup fastidiosi (il popup di avviso disconnessione) che vengono visualizzati nella pagina web.
// @match          https://finecobank.com/*
// @grant          none
// @require        https://update.greasyforks.org/scripts/547732/1651464/BasicLib.js
// @require        https://update.greasyforks.org/scripts/535551/1651487/HideAnnoyingPopupsLib.js
// @version        1.0.7
// @author         Cyrano68
// @license        MIT
// @namespace https://greasyforks.org/users/788550
// ==/UserScript==

(function()
{
    "use strict";

    const blib = window.BasicLib;
    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: Using library 'BasicLib' (version: ${blib.getVersion()})`);

    const haplib = window.HideAnnoyingPopupsLib;
    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: Using library 'HideAnnoyingPopupsLib' (version: ${haplib.getVersion()})`);

    const myVersion = GM_info.script.version;
    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: HELLO! Loading script (version: ${myVersion})...`);

    const currUrl = window.location.href;
    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: currUrl='${currUrl}'`);

    //document.addEventListener("DOMContentLoaded", onDOMContentLoaded);
    //window.addEventListener("load", onWindowLoaded);

    const buttonText = "RIMANI CONNESSO";
    //const minClickDelay_s = 0;
    const minClickDelay_s = 2;
    const maxRandomClickDelay_s = 3;

    const myID = blib.generateID();
    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: myID='${myID}'`);

    function onMutatedNode(mutation, foundNode)
    {
        // This function must return a boolean value: stopMutationProcessing. When it is TRUE the current mutation will not be further processed.
        // IMPORTANT: In this case we will always return TRUE (otherwise the "haplib" will hide every matching button).
        //

        blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - BEGIN - myID='${myID}' - foundNode.textContent=${foundNode.textContent}`);
        let stopMutationProcessing = false;

        if (foundNode.textContent === buttonText)
        {
            // The popup will appear for "clickDelay_ms" milliseconds. Then the script will click "programmatically" on the button.
            if (minClickDelay_s > 0)
            {
                const maxRandomClickDelay_ms = maxRandomClickDelay_s * 1e3;
                const randomClickDelay_ms = blib.getMathRandomInteger(maxRandomClickDelay_ms);

                const minClickDelay_ms = minClickDelay_s * 1e3;
                const clickDelay_ms = minClickDelay_ms + randomClickDelay_ms;
                blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - myID='${myID}' - clickDelay_ms=${clickDelay_ms}`);
                setTimeout(() =>
                {
                    blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - delayed - myID='${myID}' - clicking on button programmatically`);
                    foundNode.click();
                }, clickDelay_ms);
            }
            else
            {
                blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - myID='${myID}' - clicking on button programmatically`);
                foundNode.click();
            }
        }
        else
        {
            blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - myID='${myID}' - Button IGNORED`);
        }

        stopMutationProcessing = true;
        blib.consoleLog(`==> FinecoBank_com_HideAnnoyingPopups: onMutatedNode - END - myID='${myID}' - stopMutationProcessing=${stopMutationProcessing}`);
        return stopMutationProcessing;
    }

    const mutationObserverConfig = {subtree: true, childList: true};
    const mutatedNodesConfig     = {selectors: ["button.btn.btn-primary"], onMutatedNode: onMutatedNode};
    haplib.configure(mutationObserverConfig, mutatedNodesConfig);

    blib.consoleLog("==> FinecoBank_com_HideAnnoyingPopups: Script loaded");
})();
长期地址
遇到问题?请前往 GitHub 提 Issues。