From afdee4e189ea18fda25927948e33683211365f51 Mon Sep 17 00:00:00 2001 From: Lucie Bader <167515375+Lucie-Bdr@users.noreply.github.com> Date: Mon, 24 Feb 2025 08:38:17 +0100 Subject: [PATCH] Correction balex_id -> internal_id --- src/utils/definitions.js | 43 ++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/src/utils/definitions.js b/src/utils/definitions.js index 1a00a3a..e939307 100644 --- a/src/utils/definitions.js +++ b/src/utils/definitions.js @@ -58,6 +58,7 @@ async function fetchLexiconDefinitions(word) { return { lexiconId: lex.id, entries: [] }; } const entries = await searchResponse.json(); + log("Entrées récupérées :", entries); // Filtrage côté client : ne garder que les entrées dont entry.lexicon.id correspond exactement à lex.id const filteredEntries = entries.filter(entry => { @@ -91,7 +92,7 @@ async function fetchLexiconDefinitions(word) { } } - const balexId = entry.balex_id || null; + const balexId = entry.internal_id || null; items.forEach(item => { const definitionsArray = item.Sense?.Definitions; @@ -109,7 +110,7 @@ async function fetchLexiconDefinitions(word) { allDefinitions.push({ source: sourceName, text: defObj.Def, - balex_id: balexId, + internal_id: balexId, pronunciations: pronunciations, lexiconId: lexiconId }); @@ -145,7 +146,7 @@ async function fetchWiktionaryDefinition(word) { if (!authToken) { log(`Requête Wiktionnaire pour "${word}"...`); if (!word || word.trim() === "") { - throw new Error("ï¸ Mot vide, impossible d'envoyer la requête."); + throw new Error(`Mot vide, impossible d'envoyer la requête.`); } const wiktionaryURL = `https://fr.wiktionary.org/w/api.php?action=query&format=json&origin=*&prop=extracts&explaintext=true&redirects=1&titles=${encodeURIComponent(word)}`; @@ -341,7 +342,7 @@ function displayDefinitions(definitions) { const noLexiconDefinitionsContainer = document.getElementById("noLexiconDefinitionsContainer"); const noWiktionaryDefinitionsContainer = document.getElementById("noWiktionaryDefinitionsContainer"); - const balexIdMap = new Map(); // Dictionnaire pour stocker balex_id par lexique + const internalIdMap = new Map(); // Dictionnaire pour stocker internal_id par lexique // Nettoyage des listes existantes mesLexiquesList.innerHTML = ""; @@ -355,9 +356,9 @@ function displayDefinitions(definitions) { let hasWiktionaryDefinitions = false; const lexiconGroups = {}; - definitions.forEach(({ source, text, balex_id, definitionsByPOS }) => { + definitions.forEach(({ source, text, internal_id, definitionsByPOS }) => { if (!source || !text) return; - log(`Traitement de ${source}, balex_id:`, balex_id); + log(`Traitement de ${source}, internal_id:`, internal_id); const definitionContainer = document.createElement("div"); definitionContainer.classList.add("definition-item"); @@ -369,9 +370,9 @@ function displayDefinitions(definitions) { li.textContent = text; definitionContainer.appendChild(li); - // Stocker le premier `balex_id` trouvé pour chaque lexique - if (!balexIdMap.has(source) && balex_id) { - balexIdMap.set(source, balex_id); + // Stocker le premier `internal_id` trouvé pour chaque lexique + if (!internalIdMap.has(source) && internal_id) { + internalIdMap.set(source, internal_id); } // Ajout dans le bon groupe if (!lexiconGroups[source]) { @@ -510,7 +511,7 @@ function displayDefinitions(definitions) { headerContainer.appendChild(lexiconHeader); - const balexButton = createBaLexButton(lexiconName, balexIdMap); + const balexButton = createBaLexButton(lexiconName, internalIdMap); if (balexButton) { balexButton.style.position = "absolute"; balexButton.style.top = "50%"; @@ -702,7 +703,7 @@ function displayLexiconResults(lexicons) { lexicons.forEach((lexicon) => { if (!lexicon) { - console.warn("ï¸ Lexique incorrect :", lexicon); + console.warn("ï¸Lexique incorrect :", lexicon); return; } if (!lexicon.id) { @@ -724,22 +725,22 @@ function displayLexiconResults(lexicons) { /** * Crée un bouton permettant d'ouvrir une entrée dans BaLex. * @param {string} lexiconName - Le nom du lexique. - * @param {Map} balexIdMap - Une Map contenant les balex_id associés aux lexiques. - * @returns {HTMLElement|null} - Un bouton HTML ou null si `balex_id` est manquant. + * @param {Map} internalIdMap - Une Map contenant les internal_id associés aux lexiques. + * @returns {HTMLElement|null} - Un bouton HTML ou null si `internal_id` est manquant. */ -function createBaLexButton(lexiconName, balexIdMap) { +function createBaLexButton(lexiconName, internalIdMap) { const balexServ = "babalex.lezinter.net"; - const balex_id = balexIdMap.get(lexiconName) || null; + const internal_id = internalIdMap.get(lexiconName) || null; - log(`ID BaLex trouvé pour "${lexiconName}" :`, balex_id); + log(`ID BaLex trouvé pour "${lexiconName}" :`, internal_id); - // Vérifie si `balex_id` est valide - if (!balex_id) { - console.warn(`ï¸ Aucun balex_id trouvé pour "${lexiconName}". Bouton non créé.`); + // Vérifie si `internal_id` est valide + if (!internal_id) { + console.warn(`Aucun internal_id trouvé pour "${lexiconName}". Bouton non créé.`); return null; } - const balexUrl = `https://${balexServ}/entry/${balex_id}/show`; + const balexUrl = `https://${balexServ}/entry/${internal_id}/show`; // Création du bouton const balexButton = document.createElement("img"); @@ -753,7 +754,7 @@ function createBaLexButton(lexiconName, balexIdMap) { // Ajout du lien balexButton.addEventListener("click", (event) => { - event.stopPropagation(); + // event.stopPropagation(); window.open(balexUrl, "_blank"); }); -- GitLab