Arquivo

Archive for abril \14\UTC 2010

Anti Void Zero

1 mês de hiato, de novo! Tô mesmo ficando velho pra essa coisa de blog!

Mais uma vez, admito: sou viciado em Orkut. Não pela coleção de figurinhas, reencontros de namoradinhas da 2ª série do ensino básico ou pelas pérolas. Orkut pra mim é a maior fonte centralizada de informações e opiniões que existe. Desbanca o Google, a Wikipedia e o Twitter. Consigo achar tudo o que eu quero através da busca por tópicos, desde depoimentos sobre produtos quando vou fazer alguma compra, até downloads, seriais (é…) e até pessoas.

Mas o que me irrita é aquela manobra anti-spam que faz aparecer um popup em qualquer link postado nas comunidades. Aquilo é muito chato, me torra a paciência. Eu já sou um usuário grandinho de internet e sei muito bem diferenciar um link comum de um link malicioso. Pior que sequer há a opção de desabilitar este recurso!

Faz alguns meses que eu tenho algumas idéias para contornar isso e hoje elas foram concretizadas em um User-script chamado AntiVoidZero. Ele verifica todos os links da página e caso o link possua uma chamada para javascript:void(0) ou _linkInterstitial(), ele devolve a URL original e remove essas chamadas. Muito rápido e muito simples, uma vez instalado, ele funciona de modo transparente.

Você pode baixá-lo clicando aqui. Informações detalhadas sobre instalação (no Firefox), clique aqui e me desculpe a falta de paciência para postar!

Em breve eu vou lançar uma nova versão do Status:Now Playing, meu script que atualiza o status do Orkut com a última faixa do seu Last.FM. Melhorei o código e adicionei duas novidades: configuração de formatação (agora você diz como ele aparecerá) e o melhor, um ajuste de privacidade com lista de usuários, para evitar que alguma pessoa que utilize seu computador tenha uma faixa sua publicada no perfil dela. Agora o script pega o UID da pessoa atualmente logada no Orkut e relaciona com o usuário do Last.FM.

Edit:

Atendendo a um pedido do @slicerlucas, testei o script no Chrome e funcionou perfeitamente. Agora, usuários dele também podem utilizar meus scripts! Caso seu navegador mostre uma mensagem “Invalid script header” na instalação, edite o script no Bloco de Notas, trocando o “ã” de Gusmão no início por “a”.

Aproveitem e dêem uma lida neste tutorial para habilitar os User Scripts no Chrome e na seção de User Scripts da página de desenvolvedores do Chrome.

Até mais.

Update:

Nova versão, com algumas melhoras no código e uma atualização importante: esqueci de considerar os links que não são explícitos (aqueles que não mostram a URL no texto). Essa versão considera, pegando os links direto da função _linkInterstitial(). É só copiar e colar em cima do código antigo.

// ==UserScript==
// @name           AntiVoidZero
// @namespace      M. Gusmao https://pvrehaavok.wordpress.com
// @include        *orkut.com*
// ==/UserScript==

var link;
var links = unsafeWindow.document.getElementsByTagName("a");
var novolink;

for (link in links) {
 
 var olink = links[link];
 
 if (olink.href == "javascript:void(0);" && olink.onclick.toString().match(/Interstitial/) != null) {
 
 novolink = olink.onclick.toString().match(/\(\"(.*)\"\)/)[1];
 olink.onclick = null;

 if (!novolink.match(/^http/)) novolink = "http://" + novolink;
 
 olink.href = novolink;
 }
 
}
%d blogueiros gostam disto: