Show random verification time

show random verification time

// ==UserScript==
// @name                Show random verification time
// @namespace           https://gf.qytechs.cn/users/821661
// @match               https://*.superau.la/*
// @grant               none
// @version             1.0
// @require             https://update.gf.qytechs.cn/scripts/526417/1540623/USToolkit.js
// @author              hdyzen
// @description         show random verification time
// @license             GPL-3.0-only
// ==/UserScript==

function waitElement(selector) {
    return new Promise((resolve, reject) => {
        const callback = () => {
            const target = document.querySelector(selector);
            if (target) resolve(target);
        };

        const observer = new MutationObserver(callback);

        observer.observe(document.body, {
            childList: true,
            subtree: true,
        });
    });
}

async function init() {
    try {
        const dataFutura = new Date(JSON.parse(localStorage.getItem("db-v6")).CurrentSession.AulaEmAndamento.ValidacaoAleatoria.CandidatoConvocacoes[0].HoraConvocacaoAleatoria);
        const restante = await waitElement(".chat__header__title:has(> :nth-child(2))");
        const aleatoria = document.createElement("span");
        aleatoria.style.marginLeft = "6px";
        restante.appendChild(aleatoria);

        const intervalo = setInterval(() => {
            const agora = new Date();
            const tempoRestante = dataFutura - agora;

            if (tempoRestante <= 0) {
                clearInterval(intervalo);
                console.log("A data futura foi alcançada!");
            } else {
                const segundos = Math.floor((tempoRestante / 1000) % 60);
                const minutos = Math.floor((tempoRestante / (1000 * 60)) % 60);
                const horas = Math.floor((tempoRestante / (1000 * 60 * 60)) % 24);

                aleatoria.textContent = `• ${horas}h${minutos}m${segundos}s`;
                // console.log(`${horas}h${minutos}m${segundos}s`);
            }
        }, 1000);
    } catch (error) {
        console.error("Error: ", error);
    }
}
init();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址