Eklablog Tous les blogs Top blogs Technologie & Science Tous les blogs Technologie & Science
Editer l'article Suivre ce blog Administration + Créer mon blog
MENU

Pour le moment en phase expérimentale et de projet, cette extension aura pour but de simplifier la vie des utilisateurs de kazeo et de firefox au mieux. blog pour le moment sans contenu.

Publicité

déclaration et appel de fonctions

Ce qu'on appellera fonction sont plutôt ce qu'on appellerait procédure : à l'heure actuelle, les fonctions ne renvoient rien en ZeL.

Pour déclarer une fonction, on procède de la manière suivante :

{"function": "Nom de la fonction",
     "params":[Liste des paramètres]
     "do":[Instructions]
},

et pour appeler la fonction :

{"call":"parcourir",

  "Parametres":"valeurs",

}

 

Notes :

  • Les paramètres sont passés par valeur
  • Les paramètres doivent obligatoirement débuter par un "$" (exemple : "$param")
  • Le principe des paramètres est que toutes les occurrences des paramètres seront remplacées par ce qui est envoyé lors de l'appel. Exemple :
    {"function":"exemple",
          "params":["$param", "$inst2", "$val2"],
          "do":[
                   {"goTo":"$param"},
                   {"$inst2":"$val2"},
          ],
        },
        {"call":"exemple",
          "$param":"a:first",
          "$inst2":"click",
          "$val2":"l",
        }
    Équivaut à :
    {"goTo":"a:first"},
    {"click":"l"},
     
Exemples complets :
Exemple 1 :

{
  "debug":true, // enables debug mode
  "url":"kazeo.com/gestion/admin.php?page=forum", // replace SOMELINK or delete it
  "do":[
    {"function":"exemple",
      "params":["$param", "$inst2", "$val2"],
      "do":[
               {"goTo":"$param"},
               {"$inst2":"$val2"},
      ],
    },
    {"call":"exemple",
      "$param":"a:first",
      "$inst2":"click",
      "$val2":"l",
    }
 ],
}

Exemple 2 :

Note : cet exemple montre une chose intéressante avec les fonctions : les fonctions récursives
Ici, on va parcourir toutes les catégories des forums grâce à la récursivité.

{
  "debug":true, // enables debug mode
  "url":"kazeo.com/gestion/admin.php?page=forum",
  "do":[
    {"ifnotexists":".tclcon",
     "then":[
        {"exit":"vous devez etre connecte"},
    ]},
    {"ifnotexists":"#btn_close_tabs_bar",
     "then":[
        {"exit":"Pour tester ce script, il faut se connecter avec la version stable de Kazeo"},
    ]},
    {"function":"parcourir", // déclaration de la fonction "parcourir"
     "do":[
        {"for":"$topic",
        "in":".tclcon h3 a[href*='sr=viewforum']", // tant qu'il y a un lien vers une catégorie/sous-catégorie
        "options":"reload",
        "do":[
            {"goTo":"$topic"},
            {"click":"l"},
            {"wait":"while loading"},
            {"call":"parcourir"}, // fonction recursive
        ],
        },
        {"ifexists":".linkst a:last",
         "then":[
            
            {"goTo":".linkst a:last"},
            {"click":"l"},
            {"wait":"while loading"},
            {"goTo":"#btn_close_tabs_bar"},
            {"click":"l"},
        ]},
    ]},
    {"call":"parcourir"}, // appel de la fonction parcourir
 ],
}

Publicité
Retour à l'accueil
Partager cet article
Repost0
Pour être informé des derniers articles, inscrivez vous :
Commenter cet article