From 6a6ef7af210fecf0e1b9ce255618460992d4625d Mon Sep 17 00:00:00 2001
From: Lucie Bader <167515375+Lucie-Bdr@users.noreply.github.com>
Date: Thu, 20 Feb 2025 16:38:35 +0100
Subject: [PATCH] =?UTF-8?q?Pas=20d'ID=20lexique=20dans=20messages=20apr?=
 =?UTF-8?q?=C3=A8s=20ajout=20mot?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/context_menu/custom_context_menu.js |  3 +--
 src/sidebar/sidebar.js                  | 24 +++++++++++++++++-------
 src/utils/definitions.js                |  2 --
 src/utils/logger.js                     |  4 ++--
 4 files changed, 20 insertions(+), 13 deletions(-)

diff --git a/src/context_menu/custom_context_menu.js b/src/context_menu/custom_context_menu.js
index dc136d9..3b64fd8 100644
--- a/src/context_menu/custom_context_menu.js
+++ b/src/context_menu/custom_context_menu.js
@@ -308,11 +308,10 @@ async function showPicker(event, selectedText) {
           }
         }
         if (existingLexiconIds.size > 0) {
-          alert(`⚠️ Le mot "${selectedText}" existe déjà dans les lexiques suivants : ${Array.from(existingLexiconIds).join(", ")}`);
+          alert(`Le mot "${selectedText}" existe déjà dans les lexiques suivants : ${Array.from(existingLexiconIds).map(id => lexiconDescriptions[id]).join(", ")}`);
         }
         const lexiconsToAdd = [...selectedLexicons].filter(id => !existingLexiconIds.has(id));
         if (lexiconsToAdd.length === 0) {
-          alert(`✅ Le mot "${selectedText}" est déjà présent dans tous les lexiques sélectionnés.`);
           return;
         }
         try {
diff --git a/src/sidebar/sidebar.js b/src/sidebar/sidebar.js
index c182726..695f8da 100644
--- a/src/sidebar/sidebar.js
+++ b/src/sidebar/sidebar.js
@@ -471,22 +471,31 @@ async function handleAddWordClick() {
     }
   }
 
-  // 4) Si le mot existe déjà dans certains lexiques, on les affiche
+  // 4) Déterminer les lexiques où ajouter le mot (ceux qui n'ont pas déjà le mot)
+  const lexiconsToAdd = selectedLexiconIds.filter(id => !existingLexiconIds.has(id));
+
+  // Si le mot existe déjà dans certains lexiques, on affiche le message
   if (existingLexiconIds.size > 0) {
+    const existingLexiconsNames = Array.from(existingLexiconIds)
+      .map(id => lexiconMap.get(id) || id)
+      .join(", ");
     if (lexiconResultElement) {
       lexiconResultElement.innerHTML =
         "Le mot <strong>" + selectedWord + "</strong> existe déjà dans le(s) lexique(s) : " +
-        Array.from(existingLexiconIds).join(", ") + ".";
+        "<strong>" + existingLexiconsNames + "</strong>.";
     }
   }
 
-  // 5) Déterminer les lexiques où ajouter le mot
-  const lexiconsToAdd = selectedLexiconIds.filter(id => !existingLexiconIds.has(id));
   if (lexiconsToAdd.length === 0) {
     return; 
   }
 
-  // 6) Envoi d'une seule requête pour tous les lexiques restants
+  // Construction du message de succès avec les noms des lexiques où le mot va être ajouté
+  const lexiconsNames = lexiconsToAdd
+    .map(id => lexiconMap.get(id) || id)
+    .join(", ");
+
+  // 5) Envoi d'une seule requête pour tous les lexiques restants
   try {
     log(`📡 Envoi de l'ajout du mot "${selectedWord}" dans les lexiques :`, lexiconsToAdd);
     const result = await window.AddWord(authToken, selectedWord, lexiconsToAdd, false);
@@ -497,11 +506,11 @@ async function handleAddWordClick() {
     await new Promise(resolve => setTimeout(resolve, 300));
     browser.runtime.sendMessage({ action: "refreshUI" });
 
-    // 7) Affichage du message de succès
+    // 6) Affichage du message de succès
     if (lexiconResultElement) {
       lexiconResultElement.innerHTML +=
         "<br>✅ Mot <strong>" + selectedWord + "</strong> ajouté avec succès dans : " +
-        lexiconsToAdd.join(", ") + ".";
+        lexiconsNames + ".";
     }
 
   } catch (error) {
@@ -512,6 +521,7 @@ async function handleAddWordClick() {
   }
 }
 
+
 // ─────────────────────────────────────────────────────────────────────────────
 // ▌ Réception des messages
 // ─────────────────────────────────────────────────────────────────────────────
diff --git a/src/utils/definitions.js b/src/utils/definitions.js
index 3ff087c..ca0a070 100644
--- a/src/utils/definitions.js
+++ b/src/utils/definitions.js
@@ -131,7 +131,6 @@ async function fetchWiktionaryDefinition(word) {
     authToken = result.accessToken;
 
     if (!authToken) {
-      // Utiliser la première fonction si l'utilisateur n'est pas connecté
       log(`🔍 Requête Wiktionnaire pour "${word}"...`);
       if (!word || word.trim() === "") {
         throw new Error("⚠️ Mot vide, impossible d'envoyer la requête.");
@@ -160,7 +159,6 @@ async function fetchWiktionaryDefinition(word) {
         }
       ];
     } else {
-      // Utiliser la seconde fonction si l'utilisateur est connecté
       log(` Recherche de la définition pour : ${word}`);
 
       // Récupération des données depuis l'API
diff --git a/src/utils/logger.js b/src/utils/logger.js
index 3d3891c..9828f27 100644
--- a/src/utils/logger.js
+++ b/src/utils/logger.js
@@ -5,7 +5,7 @@
 (function () {
   if (typeof window !== 'undefined') {
     if (typeof window.DEBUG === 'undefined') {
-      window.DEBUG = true; // true en debug
+      window.DEBUG = false; // true en debug
     }
     if (!window.log) {
       function log(...args) {
@@ -17,7 +17,7 @@
     }
   } else if (typeof self !== 'undefined') {
     if (typeof self.DEBUG === 'undefined') {
-      self.DEBUG = true; // true en debug
+      self.DEBUG = false; // true en debug
     }
     if (!self.log) {
       function log(...args) {
-- 
GitLab