Skip to content
Snippets Groups Projects
Commit afdee4e1 authored by Lucie Bader's avatar Lucie Bader
Browse files

Correction balex_id -> internal_id

parent 47434a3b
No related branches found
No related tags found
No related merge requests found
...@@ -58,6 +58,7 @@ async function fetchLexiconDefinitions(word) { ...@@ -58,6 +58,7 @@ async function fetchLexiconDefinitions(word) {
return { lexiconId: lex.id, entries: [] }; return { lexiconId: lex.id, entries: [] };
} }
const entries = await searchResponse.json(); 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 // Filtrage côté client : ne garder que les entrées dont entry.lexicon.id correspond exactement à lex.id
const filteredEntries = entries.filter(entry => { const filteredEntries = entries.filter(entry => {
...@@ -91,7 +92,7 @@ async function fetchLexiconDefinitions(word) { ...@@ -91,7 +92,7 @@ async function fetchLexiconDefinitions(word) {
} }
} }
const balexId = entry.balex_id || null; const balexId = entry.internal_id || null;
items.forEach(item => { items.forEach(item => {
const definitionsArray = item.Sense?.Definitions; const definitionsArray = item.Sense?.Definitions;
...@@ -109,7 +110,7 @@ async function fetchLexiconDefinitions(word) { ...@@ -109,7 +110,7 @@ async function fetchLexiconDefinitions(word) {
allDefinitions.push({ allDefinitions.push({
source: sourceName, source: sourceName,
text: defObj.Def, text: defObj.Def,
balex_id: balexId, internal_id: balexId,
pronunciations: pronunciations, pronunciations: pronunciations,
lexiconId: lexiconId lexiconId: lexiconId
}); });
...@@ -145,7 +146,7 @@ async function fetchWiktionaryDefinition(word) { ...@@ -145,7 +146,7 @@ async function fetchWiktionaryDefinition(word) {
if (!authToken) { if (!authToken) {
log(`Requête Wiktionnaire pour "${word}"...`); log(`Requête Wiktionnaire pour "${word}"...`);
if (!word || word.trim() === "") { 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)}`; 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) { ...@@ -341,7 +342,7 @@ function displayDefinitions(definitions) {
const noLexiconDefinitionsContainer = document.getElementById("noLexiconDefinitionsContainer"); const noLexiconDefinitionsContainer = document.getElementById("noLexiconDefinitionsContainer");
const noWiktionaryDefinitionsContainer = document.getElementById("noWiktionaryDefinitionsContainer"); 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 // Nettoyage des listes existantes
mesLexiquesList.innerHTML = ""; mesLexiquesList.innerHTML = "";
...@@ -355,9 +356,9 @@ function displayDefinitions(definitions) { ...@@ -355,9 +356,9 @@ function displayDefinitions(definitions) {
let hasWiktionaryDefinitions = false; let hasWiktionaryDefinitions = false;
const lexiconGroups = {}; const lexiconGroups = {};
definitions.forEach(({ source, text, balex_id, definitionsByPOS }) => { definitions.forEach(({ source, text, internal_id, definitionsByPOS }) => {
if (!source || !text) return; 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"); const definitionContainer = document.createElement("div");
definitionContainer.classList.add("definition-item"); definitionContainer.classList.add("definition-item");
...@@ -369,9 +370,9 @@ function displayDefinitions(definitions) { ...@@ -369,9 +370,9 @@ function displayDefinitions(definitions) {
li.textContent = text; li.textContent = text;
definitionContainer.appendChild(li); definitionContainer.appendChild(li);
// Stocker le premier `balex_id` trouvé pour chaque lexique // Stocker le premier `internal_id` trouvé pour chaque lexique
if (!balexIdMap.has(source) && balex_id) { if (!internalIdMap.has(source) && internal_id) {
balexIdMap.set(source, balex_id); internalIdMap.set(source, internal_id);
} }
// Ajout dans le bon groupe // Ajout dans le bon groupe
if (!lexiconGroups[source]) { if (!lexiconGroups[source]) {
...@@ -510,7 +511,7 @@ function displayDefinitions(definitions) { ...@@ -510,7 +511,7 @@ function displayDefinitions(definitions) {
headerContainer.appendChild(lexiconHeader); headerContainer.appendChild(lexiconHeader);
const balexButton = createBaLexButton(lexiconName, balexIdMap); const balexButton = createBaLexButton(lexiconName, internalIdMap);
if (balexButton) { if (balexButton) {
balexButton.style.position = "absolute"; balexButton.style.position = "absolute";
balexButton.style.top = "50%"; balexButton.style.top = "50%";
...@@ -702,7 +703,7 @@ function displayLexiconResults(lexicons) { ...@@ -702,7 +703,7 @@ function displayLexiconResults(lexicons) {
lexicons.forEach((lexicon) => { lexicons.forEach((lexicon) => {
if (!lexicon) { if (!lexicon) {
console.warn(" Lexique incorrect :", lexicon); console.warn("️Lexique incorrect :", lexicon);
return; return;
} }
if (!lexicon.id) { if (!lexicon.id) {
...@@ -724,22 +725,22 @@ function displayLexiconResults(lexicons) { ...@@ -724,22 +725,22 @@ function displayLexiconResults(lexicons) {
/** /**
* Crée un bouton permettant d'ouvrir une entrée dans BaLex. * Crée un bouton permettant d'ouvrir une entrée dans BaLex.
* @param {string} lexiconName - Le nom du lexique. * @param {string} lexiconName - Le nom du lexique.
* @param {Map} balexIdMap - Une Map contenant les balex_id associés aux lexiques. * @param {Map} internalIdMap - Une Map contenant les internal_id associés aux lexiques.
* @returns {HTMLElement|null} - Un bouton HTML ou null si `balex_id` est manquant. * @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 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 // Vérifie si `internal_id` est valide
if (!balex_id) { if (!internal_id) {
console.warn(`Aucun balex_id trouvé pour "${lexiconName}". Bouton non créé.`); console.warn(`Aucun internal_id trouvé pour "${lexiconName}". Bouton non créé.`);
return null; return null;
} }
const balexUrl = `https://${balexServ}/entry/${balex_id}/show`; const balexUrl = `https://${balexServ}/entry/${internal_id}/show`;
// Création du bouton // Création du bouton
const balexButton = document.createElement("img"); const balexButton = document.createElement("img");
...@@ -753,7 +754,7 @@ function createBaLexButton(lexiconName, balexIdMap) { ...@@ -753,7 +754,7 @@ function createBaLexButton(lexiconName, balexIdMap) {
// Ajout du lien // Ajout du lien
balexButton.addEventListener("click", (event) => { balexButton.addEventListener("click", (event) => {
event.stopPropagation(); // event.stopPropagation();
window.open(balexUrl, "_blank"); window.open(balexUrl, "_blank");
}); });
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment