Discussion MediaWiki:Common.js

Dernier commentaire : il y a 6 ans par Darkdadaah dans le sujet Utiliser la config $wgUploadNavigationUrl plutôt que du javascript

Bugs depuis MW 1.18 modifier

Il reste des bugs depuis la migration, les gadgets suivants ne fonctionnent plus :

  1. MediaWiki:Gadget-AjaxPatrol.js.
  2. MediaWiki:Onlyifsystem.js.

JackPotte ($) 13 novembre 2011 à 12:42 (UTC)Répondre

Le second fonctionne sous firefox et chromium (et ce n’est pas un gadget mais ça devrait l’être). — Dakdada (discuter) 13 novembre 2011 à 18:02 (UTC)Répondre
J’ai beau vider mon cache, je n’ai toujours rien avec Firefox 8. JackPotte ($) 13 novembre 2011 à 19:00 (UTC)Répondre
Tu es sous quel OS ? As-tu testé un autre navigateur ? J'ai testé Firefox 9 et Chromium sous Linux et Ff9 et IE9 sous Windows. NB : Je pense que je vais le déplacer en gadget, ça facilitera les tests (et c'est de toute façon là que ça devrait être). — Dakdada (discuter) 13 novembre 2011 à 19:18 (UTC)Répondre
En fait sans me loguer il fonctionne, mais sinon non, même avec mon bot qui n’utilise formellement aucun gadget ni Javascript. Sous Ubuntu, avec Firefox et Conkeror. Il y a donc forcément une incompatibilité Monobook depuis la migration. JackPotte ($) 13 novembre 2011 à 19:33 (UTC)Répondre
Je l’ai transformé en gadget, disponible dans les préférences ; j’en ai profité pour le mettre en conformité avec jQuery (pour l’appel de la fonction en tout cas). Essaye de désactiver tous les autres gadgets, il y a peut-être une incompatibilité entre eux. — Dakdada (discuter) 13 novembre 2011 à 19:51 (UTC)Répondre

Concernant MediaWiki:Gadget-AjaxPatrol.js : j’ai enlevé l’appel à la fonction getFirstElement car cela peut être fait directement avec un appel javascript tout bête (getElementsByTagName("a)[0]). On n’ a plus besoin de ces fonctions, je les enlève (getFirstElement, getNextElement, equalsAa). — Dakdada (discuter) 13 novembre 2011 à 20:31 (UTC)Répondre

De manière plus générale, si des fonctions sont utilisées par des gadgets, ce n’est pas dans Common.js qu’elles doivent être placées, mais dans un fichier js séparé qui doit être chargé en même temps que les scripts des gadgets en question (NB : avec la définition des fichiers chargés, pas avec importScript). Cela permet en outre de savoir quels sont les scripts/gadgets qui les utilisent. — Dakdada (discuter) 14 novembre 2011 à 12:50 (UTC)Répondre

Je ne suis toujours pas parvenu à réparer MediaWiki:Gadget-Onlyifsystem.js sur Monobook, et je viens de m'apercevoir que MediaWiki:Gadget-OptimizedSuivi.js utilisait encore la fonction hasclass que tu avais décidé de retirer le 3 novembre. J'ai donc tenté de la réparer mais il semble que wlElements[i].hasClass("mw-htmlform-multiselect-item") ne puisse pas remplacer hasClass(wlElements[i], "mw-htmlform-multiselect-item"). Cela ressemble au problème de MW:Thread:Project:Support_desk/Loss of sortable table functionality after MediaWiki 1.15 to 1.18 upgrade.

Espérons que les prochaines migrations MW se déroulent plus en douceur. JackPotte ($) 27 décembre 2011 à 20:08 (UTC)Répondre

J'ai donc réparé OptimizedSuivi.js en y incluant l'ancien hasclass. JackPotte ($) 28 décembre 2011 à 19:34 (UTC)Répondre

Ça tombe très mal mais je viens de voir qu'au moins Wikiwix et TargetedTranslations.js ne marchaient plus non plus. Je verrai plus tard pour l'inventaire exhaustif. JackPotte ($) 5 janvier 2012 à 19:37 (UTC)Répondre

À nettoyer modifier

Il faudrait (continuer à) faire le ménage :

  1. Voir ce qui doit être gardé absolument dans cette page :
    • TransformeEnDiscussion
    • lienAdQouBAouPdQ
    • rewritePageH1
    • Boîtes déroulantes (qui gagneraient à être écrites dans une page à part et importées, vu la taille du code)
    • LienUpload
    • RedirectCommonsFile
  2. Mettre toutes les autres fonctions activables/désactivables dans des gadgets activés par défaut (ou pas) :
    • edit.js
    • searchEngines.js
    • If-search.js (éventuellement, instable aux dernières nouvelles)
    • CadreOngletVoirOnglet (surtout si c’est pour tester)
    • Système de cache (Wikiwix)
    • User:Quentinv57/HideCategories.js (à mettre dans une page de gadget, importer depuis une page utilisateur est dangereux)
    • Utilisateurs-a-bienvenuter.js (utilisé par une poignée d’utilisateurs informés sur une seule page)
  3. Mettre les fonctions supplémentaires (comme setCookie ou GetElementsByClass) dans des pages qui ne sont chargées que par les gadgets qui les utilisent (plus propre et plus facile à tracer). Le mieux serait de se passer carrément de ces fonctions en utilisant JQuery, mais on n’en est pas encore là :
    • getElementsByClass
    • setCookie, getCookie, deleteCookie, getCookieVal
    • getTextContent
    • getAttr -> RedirectCommonsFile
  1. Proposé à la suppression (utilisation trop rare) :
    • iProject
    • Rebours

On y verra plus clair et ce sera plus facile et plus sécurisé quand on voudra modifier le code de ces fonctions (code qui rappelons-le est chargé par tous les visiteurs). — Dakdada (discuter) 31 janvier 2012 à 17:28 (UTC)Répondre

Merci pour ce tri. Personnellement je mettrais aussi par défaut :
  1. CadreOnglet car ce n'est plus un test mais bel et bien la seule façon actuelle d'afficher décemment ce modèle de plus en utilisé.
  2. Wikiwix sinon toutes les IP vont supprimer des liens morts qui n'en sont pas vraiment.
Sinon je placerais le rebours avec les fonctions employées dans plusieurs gadgets, dans MediaWiki:Gadget-Common.js, page qui existe déjà sur WB. On pourrait présenter ça dans un pack "effets avancés" (comme le dit Ubuntu) ou "meilleure apparence" (selon Windows). JackPotte ($) 31 janvier 2012 à 18:44 (UTC)Répondre

"Autres projets" modifier

Changer:

   interProject.innerHTML = '<h5>Autres projets<\/h5><div class="pBody">'+iProject+'<\/div>';

à

   interProject.innerHTML = '<h3>Autres projets<\/h3><div class="pBody">'+iProject+'<\/div>';

Voir sur Wiktionnaire:Portails, à gauche.

Merci, Malafaya (discussion) 26 août 2013 à 10:30 (UTC)Répondre

Obrigado, maintenant c'est homogène avec les autres paragraphes de la sidebar. JackPotte ($) 26 août 2013 à 11:13 (UTC)Répondre

Utiliser la config $wgUploadNavigationUrl plutôt que du javascript modifier

Bonjour, plutôt qu'utiliser du javascript pour changer le lien Importer un fichier, on peut le faire en modifiant la config. Ça ne changera rien pour l'utilisateur. Je compte faire ce changement prochainement, on pourra donc ensuite supprimer le code inutile de MediaWiki:Common.js. Cordialement --Framawiki (notifiez svp) (discussion) 9 juillet 2017 à 15:54 (UTC)Répondre

  Pour JackPotte ($) 11 juillet 2017 à 18:50 (UTC)Répondre
  Pour. J'en ai profité pour modifier {{phab}} dont je trouvais également l'usage particulièrement pénible. — Dakdada 11 juillet 2017 à 21:34 (UTC)Répondre
Revenir à la page « Common.js ».