Aller au contenu

MediaWiki:Gadget-wikt.dicotheque-link.js

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.

Remarque: après avoir sauvegardé, vous devez vider le cache de votre navigateur pour que les changements prennent effet. Mozilla, cliquez sur Actualiser (ou ctrl-r). Internet Explorer / Opera: ctrl-f5. Safari: cmd-r. Konqueror ctrl-r.

/**
 * (fr) Ajoute un lien vers la Dicothèque si la page contient
 * une section de langue parmi celles supportées par la Dicothèque.
 * ----------------------------------------------------------------
 * (en) Adds a link to the Dicothèque if the page contains at least
 * one language section among those supported by the Dicothèque.
 */
$(function () {
  console.log("Chargement de Gadget-wikt.dicotheque-link.js…");

  const supportedLanguages = ["fr", "frm", "br", "lorrain", "wa"];
  if (supportedLanguages.every((code) => $(`#${code}`).length === 0)) {
    console.log("[Gadget-wikt.dicotheque-link.js] Aucune section de langue supportée n’a été trouvée.");
    return;
  }

  const entry = mw.config.get("wgTitle");
  $.get(
      "https://api.dicotheque.org/v1/entries/" + encodeURIComponent(entry),
      {
        strict: "true",
      },
      onResponse,
      "json"
  );

  function onResponse(data) {
    if (!data.length) {
      console.log("[Gadget-wikt.dicotheque-link.js] Aucune entrée dans la dicothèque.");
      return;
    }
    const element = mw.util.addPortletLink(
        "p-tb",
        "https://dicotheque.org/search/" + encodeURIComponent(entry),
        "Dicothèque",
        "t-dicotheque",
        "Voir dans la Dicothèque (s’ouvre dans un nouvel onglet)"
    );
    if (element)
      $(element).find("a").attr("target", "_blank");
  }
});