16
Dic
08

Citar notas en el nótame (menéame)

El nótame es una sección de menéame donde puedes escribir pequeñas notas públicas. En tus notas, puedes referirte (o citar) a la última nota de otro usuario escribiendo una arroba (@) seguida del nombre del usuario al que te refieres.
En mi opinión, debería ser mas fácil, no me gusta tener que escribir el nombre de usuario, o tener que copiar/pegar, por eso he escrito este pequeño script.

Puedes ver como funciona en http://www.youtube.com/watch?v=C2ktZAoBtpk

Para utilizarlo, necesitas usar el navegador web FireFox , y tener instalado el plugin GreaseMonkey para FireFox.
El script está publicado en http://userscripts.org/scripts/show/35186 , donde puedes instalarlo y ver el código fuente

También puedes ver el código fuente aquí

// ==UserScript==
// @name           Nótame Hacks
// @namespace      http://meneame.net/notame
// @description    Añade funciones extra en las notas
// @include        http://meneame.net/notame*
// ==/UserScript==

// Creamos el nodo con el script
var js = document.createElement('script');
js.setAttribute('id', 'notame_hacks');
js.setAttribute('type', 'text/javascript');

// ==UserScript==
// @name          Nótame Hacks
// @namespace     http://meneame.net/notame
// @description   Mejoras en la interfaz gráfica
// @include       http://meneame.net/notame/*
// ==/UserScript==

    js.text += "\nvar esperar = 1000;";
    js.text += "\nvar refresco = 100;";
    js.text += "\nvar cancelarBusqueda = false;";
    js.text += "\nvar it;";
    js.text += "\nvar invocarTextarea = function(usuario) {";
    js.text += "\n    get_votes('post_edit.php','edit_comment','addpost',0,0);";
    js.text += "\n    it = setInterval('comprobarTextarea(\\'' + usuario + '\\')', refresco);";
    js.text += "\n    setTimeout(function() { cancelarBusqueda = true; }, esperar);";
    js.text += "\n}";
    js.text += "\nvar comprobarTextarea = function(usuario) {";
    js.text += "\ntexto = document.getElementById('post');";
    js.text += "\n    if(texto) {";
    js.text += "\n        clearInterval(it);";
    js.text += "\n        citar(usuario);";
    js.text += "\n    } else if(cancelarBusqueda) {";
    js.text += "\n        clearInterval(it);";
    js.text += "\n    }";
    js.text += "\n}";
    js.text += "\nvar citando, texto;";
    js.text += "\nvar citar = function(usuario) {";
    js.text += "\n    texto = document.getElementById('post');";
    js.text += "\n    if(!citando || (!texto)) {";
    js.text += "\n        if(!texto) {";
    js.text += "\ncitando = false;";
    js.text += "\n            invocarTextarea(usuario);";
    js.text += "\n\n        } else {";
    js.text += "\ncitando = true;";
    js.text += "\n            texto.value = '@' + usuario + ' ';";
    js.text += "\n        }";
    js.text += "\n    } else {";
    js.text += "\n        texto.value += ' @' + usuario + ' ';";
    js.text += "\n    }";
    js.text += "\n}";
    js.text += "\nvar notas = document.getElementsByTagName('ol')[1].childNodes;";
    js.text += "\nvar nota, url, usuario;";
    js.text += "\nfor(i = 0; i < notas.length; i++) {";
    js.text += "\n    nota = notas[i];";
    js.text += "\n    if(nota.nodeType == 3) continue;";
    js.text += "\n    url = nota.childNodes[1].childNodes[1].getElementsByTagName('a')[0].href;";
    js.text += "\n    usuario = url.substring(url.lastIndexOf('/')+1);";
    js.text += "\n    obj = nota.childNodes[1].childNodes[0].innerHTML += '&nbsp;&nbsp;&nbsp;<a href=\"javascript:citar(\\'' + usuario + '\\')\">Citar</a>';";
    js.text += "\n}";
}
// Añadimos el nodo al <head>
document.getElementsByTagName('head')[0].appendChild(js);
Anuncios

0 Responses to “Citar notas en el nótame (menéame)”



  1. Dejar un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: