Sujet sur Discussion Gestion:Tâches/Liste/119

Résumé par Antoine Mercier-Linteau

Loader implémenté.

Antoine Mercier-Linteau (discussioncontributions)

@Charles-Éric Noël Laflamme, j'ai terminé la première version du Loader (MediaWiki:Gadget-tour-loader.js).

L'objectif du module est de charger automatiquement les tours et de les proposer à l'utilisateur selon plusieurs conditions (documentées dans mw.guidedTour.loader).

Pour charger le loader, il suffit d'exécuter mw.guidedTour.loader.launch() dans ta console javascript.

Pour le moment, le loader n'est pas appelé automatiquement afin qu'on se laisse le temps de débogger.

Charles-Éric Noël Laflamme (discussioncontributions)

J'ai regardé le code du Gadget-tour-loader et j'ai corrigé quelques bug.

  • Afin de retrouver le nom du tour tourName, le code utilisait l'id, mais ce dernier était parfois erroné car guidedTour semble ajouter à l'id l'étape actuelle (e.g. basic_navigation à l'étape forum donne basic_navigation-forum) ce qui rendait les noms des cookies erronés. L'utilisation de la class permet de contourner le problème.
  • Le code n'entrait pas dans les for loops pour vérifier les conditions requires et excludePages.
  • Lors de la vérification de la condition requires, le cookie désignant un tour complété était recherché sous le suffix "-done" alors qu.il était enregistré sous "-completed".
  • Lors de la vérification de la condition excludePages, la méthode .test() était utilisé sur un string et non une expression regex, ce qui générait une erreur.

Après avoir corrigé ces petits bugs, j'ai tenté de lancer les tours basic_navigation et visual_edition selon différentes conditions et le module fonctionnait à merveille! Par contre, pour une raison que j'ignore, il faut un peu de temps aux modifications faites dans Gadget-tour-loader avant qu'elles soient effectives sur une page, même après avoir essayé de purger celle-ci.

Antoine Mercier-Linteau (discussioncontributions)

Vraiment merci! Les mises à jour prennent du temps à se propager en raison de la mise en cache. Quand je vais Maj+F5 sur mon navigateur les scripts sont correctement rechargés. La purge des pages c'est surtout pour le contenu et non les scripts.