"Espiar" a un usuario de ForoBeta.

  • Autor Autor zcriptz
  • Fecha de inicio Fecha de inicio
Saber que estaba haciendo un usuario no es normal? Perdón mi ignorancia pero cuando pulso el perfil de alguien me sale que esta haciendo sin ningún programa
 
Saber que estaba haciendo un usuario no es normal? Perdón mi ignorancia pero cuando pulso el perfil de alguien me sale que esta haciendo sin ningún programa

Pero este muestra en tiempo real. 👁👁
 
Ponte a trabajar
 

Muy bueno 😂. He hecho una modificación rapida usando promises (no me mateis programadores expertos del foro, se que me estoy saltando varias normas de estilo, etc, es algo funcional rapido 😛)

JavaScript:
const token = document.getElementsByName('_xfToken')[0].value;
let user;
let userId;

spyDiv = document.createElement('div');
spyDiv.style = "position:absolute;top:20px;right:0;font-size:14px;color:white;text-shadow:1px 1px 1px black;padding: 1.5%;";
spyDiv.innerHTML = '<input type="text" id="user"><input type="button" onclick="spy()" value="Espiar">';
document.body.appendChild(spyDiv);


async function spy() {
    function _fetchResponse(request) {
        return fetch(request).then(r =>  r.json());
    }

    async function _getUserId(user) {
        const response = await _fetchResponse(`https://forobeta.com/index.php?members/find&q=${user}&_xfToken=${token}&_xfResponseType=json`)
        return (response) ? {img: response.results[0].iconHtml, id: response.results[0].iconHtml.match(/data-user-id="\d+"/g)[0].match(/\d+/g)} : null;
    }

    async function _getUserStatus(user) {
        const response = await _fetchResponse(`https://forobeta.com/members/${user}/?tooltip=true&_xfToken=${token}&_xfResponseType=json`);
        return (response) ? response.html.content.match(/<dd dir="auto">(.*?)<\/dd>/gis)[0].replace(/<dd dir="auto">|<\/dd>/gis,'').trim(): null;
    }
    user = (!user) ? document.getElementById("user").value : user;
    userId = (!userId) ? await _getUserId(user) : userId;
    spyDiv.innerHTML = `${userId.img} ${user} - ${await _getUserStatus(`${user}.${userId.id}`)}`;

    setTimeout(async function(){ await spy() }, 5000);
}
 

Ya no funciona al dar enter, hay que apretar el botón. 😭
 

Que tenemos aquí
 
@zcriptz el estafador resultó estafado eh?
 
Hasta el Admin tuvo miedo 😂
 
te van a banear bro xD