Discussion MediaWiki:Common.js

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une nouvelle de Wikinews, la source d'informations que vous pouvez écrire.

Code en double[modifier le wikicode]

A faire: supprimer les deux dernières fonctions

function importScript( page )
function importStylesheet( page )

doublons des deux fonctions qui précèdent. --86.210.245.198 3 novembre 2007 à 15:33 (UTC)[répondre]

Toujours pas fait... --DavidL 21 juin 2008 à 19:45 (UTC)[répondre]
Fait ici--Bapti 22 juin 2008 à 08:29 (UTC)[répondre]
Merci, maintenant, il faut déplacer la ligne
importScript("User:TheFearow/public/ticker.js");
après la définition de la fonction.
Autre modif: ajouter var pour déclarer la variable
importedScripts = {};
-->>
var importedScripts = {};
--DavidL 27 juin 2008 à 23:20 (UTC)[répondre]
Fait ici.--Bapti 29 juin 2008 à 09:53 (UTC)[répondre]

Extra Edit buttons[modifier le wikicode]

Why is there 4 blank buttons ? I remove them. Al Maghi 8 avril 2009 à 16:15 (UTC)[répondre]

mince je n'ai pas les droits. Prières de supprimer les 4 lignes. Al Maghi 8 avril 2009 à 16:16 (UTC)[répondre]
Fait J'ai masqué les quatre lignes de blanc qui étaient destinées à séparer la barre d'édition en cinq parties. Dommage que ça ne marche pas sur tous les navigateurs.--Bapti 8 avril 2009 à 19:40 (UTC)[répondre]

share template[modifier le wikicode]

Sorry this is in english, but i figure you can probably get the gist of what i'm trying to say by looking at the two versions of code. The sharing code should test to see if it is actually in the page. It is currently:

function sharefunction() {
  tab_cree=false;
  tab_cpt=0;
  var shareTemplate = document.getElementById('share');
  shareTemplate.innerHTML = '<a href="http://fr.wikinews.org/wiki/Accueil" onmouseover="openwindow()" onmouseout="setTimeout(\'closewindow()\', 300)"><img alt="Partager cet article" src="http://upload.wikimedia.org/wikipedia/commons/thumb/a/aa/ShareThisArticle-wn-fr.svg/380px-ShareThisArticle-wn-fr.svg.png" /></a>' + shareTemplate.innerHTML;
}

Should be:

function sharefunction() {
  tab_cree=false;
  tab_cpt=0;
  var shareTemplate = document.getElementById('share');
  if (shareTemplate) {
     shareTemplate.innerHTML = '<a href="http://fr.wikinews.org/wiki/Accueil" onmouseover="openwindow()" onmouseout="setTimeout(\'closewindow()\', 300)"><img alt="Partager cet article" src="http://upload.wikimedia.org/wikipedia/commons/thumb/a/aa/ShareThisArticle-wn-fr.svg/380px-ShareThisArticle-wn-fr.svg.png" /></a>' + shareTemplate.innerHTML;
  }
}

Cheers. Bawolff 1 octobre 2009 à 23:02 (UTC)[répondre]

Version HTTPS[modifier le wikicode]

Maintenant que les serveurs HTTPS et HTTP sont les mêmes, il faut en tenir compte et effectuer les modifications suivantes :

  • Utiliser des URL relatives au protocole pour tous les liens vers les serveurs de Wikimedia, c'est à dire retirer le préfixe http: dans les URLs :
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/3/37/Btn_toolbar_commentaire.png','Commentaire',"<!--","-->",'','mw-editbutton-commentaire');
addCustomButton('http://upload.wikimedia.org/wikipedia/commons/b/b4/Button_category03.png','Catégorie',"[[Catégorie:","]]",'nom de la catégorie','mw-editbutton-cat');
//...
 image.src = 'http://upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png';
//...
			image.src = "http://upload.wikimedia.org/wikipedia/commons/a/a0/Button_references_alt.png";
//...
      shareTemplate.innerHTML = '<br /><br /><a href="http://fr.wikinews.org/wiki/Accueil" onmouseover="openwindow()" onmouseout="setTimeout(\'closewindow()\', 300)"><img alt="Partager cet article" src="http://upload.wikimedia.org/wikipedia/commons/thumb/a/aa/ShareThisArticle-wn-fr.svg/380px-ShareThisArticle-wn-fr.svg.png" /></a>' + shareTemplate.innerHTML;
//...
importScriptURI('http://en.wikinews.org/w/index.php?title=MediaWiki:Gadget-dictionaryLookupHover.js&action=raw&ctype=text/javascript');
//...
  var url = 'http://toolserver.org/~kolossos/openlayers/kml-on-ol.php?lang=' + wgUserLanguage + '&params=' + h ;
//...

Version corrigée ---->

addCustomButton('//upload.wikimedia.org/wikipedia/commons/3/37/Btn_toolbar_commentaire.png','Commentaire',"<!--","-->",'','mw-editbutton-commentaire');
addCustomButton('//upload.wikimedia.org/wikipedia/commons/b/b4/Button_category03.png','Catégorie',"[[Catégorie:","]]",'nom de la catégorie','mw-editbutton-cat');
//...
 image.src = '//upload.wikimedia.org/wikipedia/commons/0/04/Button_array.png';
//...
			image.src = "//upload.wikimedia.org/wikipedia/commons/a/a0/Button_references_alt.png";
//...
      shareTemplate.innerHTML = '<br /><br /><a href="//fr.wikinews.org/wiki/Accueil" onmouseover="openwindow()" onmouseout="setTimeout(\'closewindow()\', 300)"><img alt="Partager cet article" src="//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/ShareThisArticle-wn-fr.svg/380px-ShareThisArticle-wn-fr.svg.png" /></a>' + shareTemplate.innerHTML;
//...
importScriptURI('//en.wikinews.org/w/index.php?title=MediaWiki:Gadget-dictionaryLookupHover.js&action=raw&ctype=text/javascript');
//...
  var url = '//toolserver.org/~kolossos/openlayers/kml-on-ol.php?lang=' + wgUserLanguage + '&params=' + h ;
//...

if (wgServer == "https://secure.wikimedia.org") {
  var metaBase = "https://secure.wikimedia.org/wikipedia/meta";
} else {
  var metaBase = "http://meta.wikimedia.org";
}
importScriptURI(metaBase+"/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400")
 
var wma_settings = { 
  buttonImage: 'http://upload.wikimedia.org/wikipedia/commons/thumb/e/e9/Geographylogo.svg/18px-Geographylogo.svg.png'
}

Version corrigée ---->


if (wgServer == "https://secure.wikimedia.org") {
  var metaBase = "https://secure.wikimedia.org/wikipedia/meta";
} else {
  var metaBase = "//meta.wikimedia.org";
}
importScriptURI(metaBase+"/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400")
 
var wma_settings = { 
  buttonImage: '//upload.wikimedia.org/wikipedia/commons/thumb/e/e9/Geographylogo.svg/18px-Geographylogo.svg.png'
}

--DavidL 30 octobre 2011 à 14:18 (UTC)[répondre]

Fait -- Bertrand GRONDIN  → (écrire) 1 novembre 2011 à 13:57 (UTC)[répondre]
Merci pour les modifications, mais il reste 2 choses à faire pour le bout de code que je cite :
  • 1: retirer http: du lien vers meta
  var metaBase = "//meta.wikimedia.org";  // <-
  • 2: retirer le 2ème exemplaire de ce bout de code qui figure 2 fois dans le script.
--DavidL 1 novembre 2011 à 15:57 (UTC)[répondre]
FaitPrécise-moi, à l'avenir, quel code cela concerne.-- Bertrand GRONDIN  → (écrire) 4 novembre 2011 à 12:11 (UTC)[répondre]
Merci.
Le bout de code était dans mon premier message, mais n'était peut-être pas suffisamment mis en valeur, vu que la balise wiki source n'a pas de bordure ou de fond contrairement aux autres projets.
--DavidL 4 novembre 2011 à 17:15 (UTC)[répondre]

HTTPS 2 (le retour)[modifier le wikicode]

Un horrible

importScriptURI('http://en.wikinews.org/w/index.php?title=MediaWiki:Gadget-dictionaryLookupHover.js&action=raw&ctype=text/javascript');

qui traîne dans ce script (empêche la certification HTTPS complète sous Firefox, et provoque des messages "La sécurité HTTPS est compromise..." dans la console d'IE).

--> sans le http: se serait mieux

importScriptURI('//en.wikinews.org/w/index.php?title=MediaWiki:Gadget-dictionaryLookupHover.js&action=raw&ctype=text/javascript');

--> Encore mieux : le mettre en véritable gadget activé par défaut pour tout le monde, plutôt que d'avoir ce MediaWiki:Gadget-disableWiktLookup.js.

--DavidL (discussion) 11 mai 2012 à 22:00 (UTC)[répondre]

Fait en ce qui concerne le script. Pour l'activation du gadget je ne sais comment faire.-- Bertrand GRONDIN  → (écrire) 11 mai 2012 à 23:42 (UTC)[répondre]
Merci pour l'intervention.
Pour activer un gadget par défaut, il suffit d'ajouter [default] juste après le nom du gadget dans MediaWiki:Gadgets-definition. Par exemple :
WiktLookup[default]|WiktLookup.js
--DavidL (discussion) 11 mai 2012 à 23:48 (UTC)[répondre]

Erreur javascript[modifier le wikicode]

J'obtiens un message d'erreur Javascript sur les pages utilisant le modèle {{Titre}} (gadget JournalDebug) :

ERROR in function rewritePageH1: ReferenceError: insertAfter is not defined
    - fileName = https://bits.wikimedia.org/fr.wikinews.org/load.php?debug=false&lang=fr&modules=site&only=scripts&skin=monobook&*
    - lineNumber = 41

La fonction insertAfter manque effectivement à MediaWiki:Common.js. Il faudrait l'ajouter au début du script (code recopié de wikibooks b:MediaWiki:Common.js) :

/**
 * insertAfter : insérer un élément dans une page
 */
function insertAfter(parent, node, referenceNode)
{ parent.insertBefore(node, referenceNode.nextSibling); }

--DavidL (discussion) 15 juin 2012 à 15:10 (UTC)[répondre]

Fait dis moi si c'est ok pour toi. Otourly (discussion) 16 juin 2012 à 09:50 (UTC)[répondre]
Ça fonctionne. Merci.
--DavidL (discussion) 16 juin 2012 à 11:57 (UTC)[répondre]

Nouveau problème[modifier le wikicode]

J'ai une nouvelle erreur quand je visite la page La Russie teste un missile intercontinental, aperçu jusqu'au Moyen-Orient :

ERROR in function addcache: ReferenceError: getTextContent is not defined
    - fileName = https://bits.wikimedia.org/fr.wikinews.org/load.php?debug=false&lang=fr&modules=site&only=scripts&skin=monobook&*
    - lineNumber = 44

Encore une fois la fonction manquante peut être copiée depuis b:MediaWiki:Commons.js :

// Récupère proprement le contenu textuel d'un nœud et de ses nœuds descendants
// Copyright Harmen Christophe, http://openweb.eu.org/articles/validation_avancee, CC
function getTextContent(oNode) {
  if (typeof(oNode.textContent)!="undefined") return oNode.textContent;
  switch (oNode.nodeType) {
    case 3: // TEXT_NODE
    case 4: // CDATA_SECTION_NODE
      return oNode.nodeValue;
    case 7: // PROCESSING_INSTRUCTION_NODE
    case 8: // COMMENT_NODE
      if (getTextContent.caller!=getTextContent) return oNode.nodeValue;
      break;
    case 9: // DOCUMENT_NODE
    case 10: // DOCUMENT_TYPE_NODE
    case 12: // NOTATION_NODE
      return null;
  }
  var _textContent = "";
  oNode = oNode.firstChild;
  while (oNode) {
    _textContent += getTextContent(oNode);
    oNode = oNode.nextSibling;
  }
  return _textContent;
}

--DavidL (discussion) 16 juin 2012 à 15:33 (UTC)[répondre]