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