Bishop
Madmaxista
- Desde
- 5 Mar 2009
- Mensajes
- 1.840
- Reputación
- 6.297
El ignore del foro es una gran herramienta para ir al grano, evitar perder tiempo con sencilladas y dejar de ver a pesados, CM, trols, mermados o simplemente indeseables. Pero tiene algún que otro fallo. He hecho un pequeño script para tratar de solventar algunos de ellos:
- En la página principal, en el bloque de "Es tendencia", salen temas abiertos por usuarios ignorados.
- En la página principal, en la lista de foros, salen temas abiertos por usuarios ignorados en los enlaces de la derecha, mostrados como última actividad.
No soy hinjiniero filomático colejiado ni me dedico al tema, así que es una pequeña ñapa. Supongo que habrá cagadas y/o maneras de hacer mejor las cosas. El "invento" se ofrece tal y como es, sin garantía de ningún tipo. Yo lo uso en Firefox con FireMonkey, pero supongo que debería funcionar también con TamperMonkey o similar en Chrome.
- En la página principal, en el bloque de "Es tendencia", salen temas abiertos por usuarios ignorados.
- En la página principal, en la lista de foros, salen temas abiertos por usuarios ignorados en los enlaces de la derecha, mostrados como última actividad.
No soy hinjiniero filomático colejiado ni me dedico al tema, así que es una pequeña ñapa. Supongo que habrá cagadas y/o maneras de hacer mejor las cosas. El "invento" se ofrece tal y como es, sin garantía de ningún tipo. Yo lo uso en Firefox con FireMonkey, pero supongo que debería funcionar también con TamperMonkey o similar en Chrome.
JavaScript:
// ==UserScript==
// @name Burbuja: ignore+
// @description Elimina restos de hilos de usuarios ignorados en la página principal
// @author Bishop
// @match *://www.burbuja.info/inmobiliaria/forums/
// @match *://www.burbuja.info/inmobiliaria/forums/#
// @version 0.2
// @run-at document-idle
// ==/UserScript==
"use strict";
// Ignorar nombre de hilos en los últimos mensajes en lista de foros
let lasts = document.getElementsByClassName("node-extra-title");
for (const last of lasts) {
fetch(last.href)
.then(response => {
if (!response.ok) last.remove();
});
}
// Cargar lista de ignorados
fetch("https://www.burbuja.info/inmobiliaria/account/ignored")
.then(response => response.text())
.then(text => {
const parser = new DOMParser();
const htmlDocument = parser.parseFromString(text, "text/html");
let ignoredList = [];
const ignoreds = htmlDocument.getElementsByClassName("username");
for (const ignored of ignoreds) {
ignoredList.push(ignored.getAttribute("data-user-id"));
}
// Ignorar hilos completos en la lista de tendencias
let rows = document.querySelectorAll(".block[data-widget-key=Estendencia] .contentRow-figure a");
for (const row of rows) {
if (ignoredList.includes(row.getAttribute("data-user-id"))) {
row.closest("li").remove();
}
}
});
Última edición: