[Ya existe pero no lo sabia] Boton "Ultimo mensaje" en indice del subforo.

Hola.
He estado un buen tiempo pensando esta caracteristica, en realidad lo veo facil de implementar (desconociendo las limitaciones del sistema del foro claro esta) creo que podria ser interesante y muy comodo.

un boton situado en el contenedor del hilo, donde aparecen las paginas del hilo, que te lleve directamente al primer mensaje no leido.

Algo asi (Fijaros en el hilo de OffTopic, el unico que tiene mensajes sin leer)

Imagen



OK, Edito, no sabia que esa funcion estaba disponible pulsando en el propio icono del mensaje.
Casi mejor edita el asunto para no volver loco a melado [+risas]

Sí, eso ya existía. De hecho, yo abuso de él :P


Aparte de eso, añado, por si es de utilidad (o desconocimiento) a otros, existe otro "botón" para ir al primero no leído desde dentro de los hilos, junto al paginado (a la izquierda de este, arriba y abajo a la derecha).

Además, desde el listado del hilos de un foro, se puede acceder directamente al último mensaje del hilo haciendo clic en la fecha del mensaje debajo del nick del último que ha escrito.

Y la ya conocida, aunque reciente, marca ✓ que nos lleval al último mensaje nuestro en ese hilo, si hemos participado, obviamente.
JohnH escribió:Casi mejor edita el asunto para no volver loco a melado [+risas]

Sí, eso ya existía. De hecho, yo abuso de él :P


Aparte de eso, añado, por si es de utilidad (o desconocimiento) a otros, existe otro "botón" para ir al primero no leído desde dentro de los hilos, junto al paginado (a la izquierda de este, arriba y abajo a la derecha).

Además, desde el listado del hilos de un foro, se puede acceder directamente al último mensaje del hilo haciendo clic en la fecha del mensaje debajo del nick del último que ha escrito.

Y la ya conocida, aunque reciente, marca ✓ que nos lleval al último mensaje nuestro en ese hilo, si hemos participado, obviamente.

Lo del dentro del hilo lo sabia, pero no en el indice XD

Me estoy creando un UserScripts para que me aparezca donde el paginado del hilo en el indice, y de momento funciona muy bien :)

Ya he editado el titulo del hilo XD


Edito:

Imagen


Aunque ya estaba, lo he implementado a mi manera XD

Si alguien quiere el codigo:
Para implementarlo, bajar algun plugin como TamperMonkey (googleChrome) o GreaseeMonkey(firefox) y agregar este Script.


// ==UserScript==
// @ name         EOL No leidos en Indice del subforo
// @ version      1.0
// @ description  Añade un botón en el paginado del hilo del índice del subforo, que te lleva al último mensaje no leido.
// @ author       You
// @ match        https://www.elotrolado.net/foro_*
// @ grant        none
// ==/UserScript==

(function() {
    function GM_addStyle (cssStr) {
        var D = document;
        var newNode = D.createElement ('style');
        newNode.textContent = cssStr;
        var targ = D.getElementsByTagName ('head')[0] || D.body || D.documentElement;
        targ.appendChild (newNode);
    }
    GM_addStyle ( `
        .botonNuevoMensajeCustom {
            background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2223%22%20viewBox%3D%220%200%2020%2023%22%3E%3Cpath%20fill%3D%22%23ff7f00%22%20d%3D%22M7%2018h9l4%205V7H7%22%2F%3E%3Cpath%20fill%3D%22%23395a2f%22%20d%3D%22M0%2022V0h18v6h-2V2H2v15l4-4v3l-6%206z%22%2F%3E%3C%2Fsvg%3E') !important;
            background-size: 12px !important;
            height: 16px !important;
            width: 16px !important;
            background-position: center !important;
            background-repeat: no-repeat !important;
            margin-bottom: -4px;
            margin-left: -1px !important;
        }
        .botonNuevoMensajeCustom:hover {
            background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2223%22%20viewBox%3D%220%200%2020%2023%22%3E%3Cpath%20fill%3D%22%23395a2f%22%20d%3D%22M7%2018h9l4%205V7H7%22%2F%3E%3Cpath%20fill%3D%22%23395a2f%22%20d%3D%22M0%2022V0h18v6h-2V2H2v15l4-4v3l-6%206z%22%2F%3E%3C%2Fsvg%3E') !important;
        }
     ` );
    'use strict';
    //alert("Hello! I am an alert box!!");
    var hilos = document.getElementsByClassName("row topic");
    var numeroHilos = hilos.length;
    //console.log("Numero de Hilos: " + hilos.length);
    var i;
    for (i = 0; i < numeroHilos; i++) {
        try {
            var enlace = hilos[i].getElementsByClassName("rowunre")[0].getAttribute("href");
            if (enlace.endsWith("?view=unread")) {
                //console.log("Enlace: " + i + " " + enlace);
                try {
                    var paginas = hilos[i].getElementsByClassName("col-sm-12 hidden-xs pages")[0].innerHTML;
                    hilos[i].getElementsByClassName("col-sm-12 hidden-xs pages")[0].innerHTML = paginas +
                        '<span class="page-sep">, </span><a href="'+ enlace + '" class="botonNuevoMensajeCustom"></a>';
                } catch(err) {
                    //console.log("No hay suficientes hilos como para generar una pagina nueva.");
                    var paginado = hilos[i].getElementsByClassName("col-xs-24 col-sm-17 col-md-15 col-lg-16")[0].getElementsByClassName("row")[1];
                    var crearPaginado = document.createElement('div');
                    crearPaginado.className = "col-sm-12 hidden-xs pages";
                    crearPaginado.innerHTML = '<a href="'+ enlace + '" class="botonNuevoMensajeCustom"></a>';
                    paginado.appendChild(crearPaginado);
                }
            }
        } catch(err){
            //console.log("No hay mensajes nuevos");
        }
    }
})();

2 respuestas