gueschla.com/2007/10/01/hacking-scoopeo-for-fun-and-profit

post 18 of 32 · 1 October 2007 · written in French

Hacking Scoopeo for fun and profit

Hacking Scoopeo for Fun and Profit

Back after a gap of almost three months, the author shows how Scoopeo, a French Digg-style news site built on Prototype, could be driven from the address bar. Three bookmarklets use $$ and each to send every click, plus or minus on a page in one go. A logged-in account was required, and the post explains which votes actually counted.

hacking-scoopeo-for-fun-and-profit.fr1 October 2007 · 15:57

It’s been a long time … Mais me revoilà :-)

Nous allons voir comment s’amuser avec Scoopeo et un peu de Javascript :-)

Pour ceux qui ne connaissent pas, Scoopeo est un digg-like francophone.

Coté Javascript, Scoopeo utilise prototype, un framework assez proche de l’excellentissime mootools, même si ce dernier est selon moi bien plus évolué.

Prototype permet, comme son petit frère mootools, l’utilisation des fonctions $$ et each, ce qui nous permet de faire les actions suivantes.

Pour les utiliser :

  • Soit vous enregistrez le lien dans vos favoris, ce qui vous fait alors un Bookmarklet sur lequel vous cliquerez quand vous serez sur la page en question
  • Soit vous allez sur la page, vous copiez collez la ligne de code dans votre barre d’adresse, et vous faites Entrée
  • Soit vous exécutez directement le code avec Firebug :-)
Click pour tous les scoops de la page en cours

Bookmarklet : Scoopeo » Multi Click

Code barre URL :

javascript:var foo = function(){ $$('div.click_me').each(function(el){ new Ajax.Request('/clic/click/'+el.id.replace('click_me_',''), {asynchronous:true, evalScripts:true}); }); }; foo();

Code

$$('div.click_me').each(function(el){
    new Ajax.Request('/clic/click/'+el.id.replace('click_me_',''),{
        asynchronous:true,
        evalScripts:true
    });
});
Plus pour tous les commentaires de la page en cours

Bookmarklet : Scoopeo » Plus Pour Tous

Code barre URL :

javascript:var foo = function(){ $$('div.comment').each(function(el){ new Ajax.Request('/scoop/cup/'+el.id.replace('comment_',''),{asynchronous:true, evalScripts:true}); }); }; foo();

Code

$$('div.comment').each(function(el){
    new Ajax.Request('/scoop/cup/'+el.id.replace('comment_',''),{
        asynchronous:true,
        evalScripts:true
    });
});
Moins pour tous les commentaires de la page en cours

Bookmarklet : Scoopeo » Moins Pour Tous

Code barre URL :

javascript:var foo = function(){ $$('div.comment').each(function(el){ new Ajax.Request('/scoop/cdown/'+el.id.replace('comment_',''),{asynchronous:true, evalScripts:true}); }); }; foo();

Code

$$('div.comment').each(function(el){
    new Ajax.Request('/scoop/cdown/'+el.id.replace('comment_',''),{
        asynchronous:true,
        evalScripts:true
    });
});

A noter que vous devez être loggué pour faire toutes ces actions. Si vous n’êtes pas loggués, pour la première option, ça vous fera une erreur. Pour les deux autres, les “+1″/”-1″ apparaîtront bien, mais en fait, ils ne seront pas pris en compte (on peut le voir après un rafraîchissement de la page).

Si vous connaissez vous même des astuces de ce style pour Scoopeo, n’hésitez pas à les partager dans les commentaires ;-)

Original French text from Internet Archive captures of gueschla.com. Light typo fixes only. Links to outside sites are shown as plain text, because most of those 2007 addresses no longer lead where they did.