IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

transmission d'arguments surchargés à une sous fonction


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut transmission d'arguments surchargés à une sous fonction
    Bonjour,

    J'essaye en vain de transmettre des arguments surchargés à une sous fonction (elle même passé en argument).
    J'ai bien compris les erreurs de toutes mes différentes techniques mais je ne connais pas la solution...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    function name2obj(name, fonction)//execute la 'fonction' avec ses argument eventuels (à passer en surcharge) sur tous les objets 'name'
    {
    	//technique 1 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++) fonction(document.getElementsByName(name)[i], name2obj.arguments.splice(0,2));
     
    	//technique 2 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++)
    	{
    		fonction.arguments[0] = document.getElementsByName(name)[i];
    		for (j=2; j<name2obj.arguments.length; j++) fonction.arguments[j-1] = name2obj.arguments[j];
    		fonction();
    	}
     
    	//technique 3 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++)
    	{
    		for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
    		var func = fonction(document.getElementsByName(name)[i]+arg);
    		funct();
    	}
     
    	//technique 4 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++)
    	{
    		var func = 'fonction('+document.getElementsByName(name)[i];
    		for (j=2; j<name2obj.arguments.length; j++) func += ', '+name2obj.arguments[j];
    		func += ')';
    		eval(func);
    	}
     
    	//technique 5 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++) fonction(function ()
    									{
    										var arg = '';
    										arg += document.getElementsByName(name)[i];
    										for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
    										return arg;
    										});
     
    	//technique 6 : fail
    	for (i=0; i<document.getElementsByName(name).length; i++)
    	{
    		var arg = '';
    		arg += document.getElementsByName(name)[i];
    		for (j=2; j<name2obj.arguments.length; j++) arg += ', '+name2obj.arguments[j];
    		fonction(arg);
    	}
    }//ex d'appel : name2obj(cible, switchClassName, classname1, classname2);
    Merci de m'aider

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    En clair j'essaye de faire ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function fonction1(a)
    {
    	a(b, c);
    }
     
    function fonction2(b, c)
    {
    	alert(b);
    	alert(c);
    }
     
    fonction1(fonction2, 'test 1', 'test 2');
    sans connaitre le nombre d'arguments surchargé sur la fonction1 !

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Il y a bien ça qui fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function name2obj(name, fonction)//execute la 'fonction' avec ses argument eventuels (à passer en surcharge) sur tous les objets 'name'
    {
    	for (i=0; i<document.getElementsByName(name).length; i++) fonction(document.getElementsByName(name)[i], name2obj.arguments[2], 
    														name2obj.arguments[3], 
    														name2obj.arguments[4], 
    														name2obj.arguments[5]/*, 
    														(...)*/);
    }//ex d'appel : name2obj(cible, 'switchClassName', classname1, classname2);
    Mais ce n'est pas très élégant comme technique :/

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    ben tu ne passes pas les paramètres ...

    ceci fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function fonction1(a,b,c)
    {
    	a(b, c);
    }
     
    function fonction2(b, c)
    {
    	alert(b);
    	alert(c);
    }
     
    fonction1(fonction2, 'test 1', 'test 2');
    ou encore en passant tous les arguments

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function fonction1(a,b)
    {
    	a(arguments);
    }
     
    function fonction2(b)
    {
    	alert(b[1]);
    	alert(b[2]);
    }
     
    fonction1(fonction2, 'test 1', 'test 2');
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function fonction1(a, b, c)
    {
    	a.call(b, c);
    }
     
    function fonction2(b, c)
    {
    	alert(b);
    	alert(c);
    }
     
    fonction1(fonction2, 'test 1', 'test 2');
    pour ce qui est de traiter un nombre quelconque d'argument il te faut voir du cîté de arguments https://developer.mozilla.org/en/Jav...cope/arguments

    A+JYT

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Merci pour vos réponses

    Oui mais non SpaceFrog : je ne sais pas à l'avance combien de paramètres seront passé à la fonction.
    Je cherche une solution propre pour un nombre de variables inconnu !

    Qd à arguments sekaijin, j'ai essayé ds mon premier message, mais je n'ai réussie que ca il y a 10min :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function name2obj(name, fonction)//execute la 'fonction' avec ses argument eventuels (à passer en surcharge) sur tous les objets getElementsByName(name)
    {
    	for (i=0; i<document.getElementsByName(name).length; i++) fonction(document.getElementsByName(name)[i], name2obj.arguments[2], 
    														name2obj.arguments[3], 
    														name2obj.arguments[4], 
    														name2obj.arguments[5]/*, 
    														(...)*/);
    }//ex d'appel : name2obj(cible, 'switchClassName', classname1, classname2);
    et je trouve ça très laid ^^

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function fonction1(a)
    {
    	a(arguments);
    }
     
    function fonction2(b)
    {
    	for (i=1;i<b.length;i++){;
    	alert(b[i])
    	}
    }
     
    fonction1(fonction2, 'test 1', 'test 2', 'test 3', 'test 4');
    sinon passe un array en second argument ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fonction1(fonction2, ['test 1', 'test 2', 'test 3', 'test 4']);
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Oui, j'ai bien pensé à un tableaux en unique paramètre (j'aurai du prendre cette habitude au début), mais ça me fait réécrire toutes les fonctions qui appelleront fonction1, et j'en suis à... 12500 ligne de codes

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    heu ... et l'autre solution ...

    elle fonctionne quelque soit le nombre d'arguments ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    celle ci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function fonction1(a,b)
    {
    	a(arguments);
    }
     
    function fonction2(b)
    {
    	alert(b[1]);
    	alert(b[2]);
    }
     
    fonction1(fonction2, 'test 1', 'test 2');
    pareil, faut que je change tous les appels de variable comme ds fonction2, non ?

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Non celle ci ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function fonction1(a)
    {
    	a(arguments);
    }
     
    function fonction2(b)
    {
    	for (i=1;i<b.length;i++){;
    	alert(b[i])
    	}
    }
     
    fonction1(fonction2, 'test 1', 'test 2', 'test 3', 'test 4');
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Bah pareil ... ?
    Faut pas que je modifie fonction 2 en fait, si possible

  13. #13
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    ben sans passer d'arguments complémentaires ???
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    J'imaginais quelque chose comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function fonction1(fonction2)
    {
    	var args = fonction1[1];
    	for (i=2; i<fonction1.length; i++) args = ', '+fonction1[i];
    	fonction2(args);
    }
    mais args perds le type arguments et est une chaine

    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ]function fonction1(fonction2)
    {
    	fonction2.arguments.join(fonction1.arguments.splice(0, 1));
    	fonction2();
    }
    mais arguments n'accepte pas splice, et fonction2.arguments.join j'ai un doute ^^

  15. #15
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    arguments est un objet pas un array ...
    tu peux pas le unshifter, tu ne peux que le passer telquel
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Du coup, hormis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function fonction1(fonction2)
    {
    	fonction2(fonction1.arguments[1], 
    		  fonction2.arguments[2], 
    		  fonction2.arguments[...], 
    		  fonction2.arguments[50];
    }
     
    fonction2()
    {
    	foreach (args in arguments) alert(args);
    }
     
    //appel
    fonction1(fonction2, 'test1', 'test2', 'test3');
    il n'y a pas d'autres solutions ?

  17. #17
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    mettre les autre paramètres en variable globale ...

    mais sans changer les fonctions ... non
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    ok, tant pis.

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Points : 491
    Points
    491
    Par défaut
    il n'y a pas d'autres solutions ?
    Si... Faut utiliser apply, qui prend en paramètre le contexte d'éxecution, et un tableau d'arguments. Mais pour faire ce que tu veux faire, il faut d'abord transformer tes arguments en tableau, en supprimant la fonction de surcharge

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function fonction1(callback /**, args*/ ){
       //transforme en tableau en passant par slice, sans prendre le premier élément
        callback.apply(null, Array.prototype.slice.call(arguments, 1));
    }
     
    function fonction2(a, b, c, d){
      alert(a)
      alert(b)
      alert(c)
      alert(d)
    }
     
    fonction1(fonction2, 'test 1', 'test 2', 'test 3', 'test 4');

  20. #20
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    j'y avais bien pensé, mais cela suppose de modifier la fonction ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transmission d'arguments sur une fonction anonyme
    Par Sylvercis dans le forum jQuery
    Réponses: 5
    Dernier message: 11/02/2015, 01h22
  2. Fonction en argument d'une autre fonction
    Par bonjour69 dans le forum Fortran
    Réponses: 2
    Dernier message: 12/03/2008, 16h17
  3. Fonction argument d'une autre Fonction
    Par didyeah dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/05/2007, 15h10
  4. Réponses: 16
    Dernier message: 05/10/2006, 16h51
  5. entrer une fonction en argument d'une autre fonction
    Par arno78 dans le forum VB 6 et antérieur
    Réponses: 22
    Dernier message: 07/09/2006, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo