Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
ff2balex
Manage
Activity
Members
Labels
Plan
Issues
9
Issue boards
Milestones
Wiki
External wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Lex gaMe
ff2balex
Commits
346252ed
Commit
346252ed
authored
6 months ago
by
Lucie Bader
Browse files
Options
Downloads
Patches
Plain Diff
Correction affichage options menu contextuel navigateur
parent
ce3a0d1a
No related branches found
Branches containing commit
No related tags found
1 merge request
!4
Définitions (lexiques de l'utilisateur + Wiktionnaire)
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
background/background.js
+0
-24
0 additions, 24 deletions
background/background.js
background/browser_context_menu.js
+46
-26
46 additions, 26 deletions
background/browser_context_menu.js
with
46 additions
and
50 deletions
background/background.js
+
0
−
24
View file @
346252ed
...
...
@@ -254,30 +254,6 @@ async function createBrowserContextMenu() {
await
browser
.
contextMenus
.
removeAll
();
const
isConnected
=
await
isUserConnected
();
// Si connecté : options supplémentaires pour le lexique
if
(
isConnected
)
{
browser
.
contextMenus
.
create
({
id
:
"
searchLexicon
"
,
title
:
"
Vérifier si le mot est dans le lexique personnel
"
,
contexts
:
[
"
selection
"
],
});
browser
.
contextMenus
.
create
({
id
:
"
checkLexicon
"
,
title
:
"
Afficher dans quels lexiques le mot est présent
"
,
contexts
:
[
"
selection
"
],
});
browser
.
contextMenus
.
create
({
id
:
"
getDefinition
"
,
title
:
"
Obtenir une définition à partir de mes lexiques
"
,
contexts
:
[
"
selection
"
],
});
}
// Option pour rechercher sur le Wiktionnaire (accessible à tous)
browser
.
contextMenus
.
create
({
id
:
"
getDefinitionWiki
"
,
title
:
"
Rechercher une définition sur le Wiktionnaire
"
,
contexts
:
[
"
selection
"
],
});
// Bouton de connexion/déconnexion
browser
.
contextMenus
.
create
({
id
:
"
login
"
,
...
...
This diff is collapsed.
Click to expand it.
background/browser_context_menu.js
+
46
−
26
View file @
346252ed
...
...
@@ -21,18 +21,10 @@ loadAuthToken();
// ▌ Création du menu contextuel du navigateur
// ─────────────────────────────────────────────────────────────────────────────
// 1. Vérifier si le mot est dans le lexique
browser
.
contextMenus
.
create
({
id
:
"
searchLexicon
"
,
title
:
"
Ce mot est-il dans mon lexique ?
"
,
contexts
:
[
"
selection
"
],
icons
:
{
"
16
"
:
"
icons/recherche_lexique.png
"
},
});
// 2. Vérifier dans quels lexiques le mot est présent
browser
.
contextMenus
.
create
({
id
:
"
check
Lexicon
"
,
title
:
"
Affi
cher dans
quel(s)
lexique
(s) ce mot est présent
"
,
id
:
"
searchIn
Lexicon
s
"
,
title
:
"
Recher
cher dans
mes
lexique
s
"
,
contexts
:
[
"
selection
"
],
icons
:
{
"
16
"
:
"
icons/quel_lexique.png
"
},
});
...
...
@@ -76,27 +68,17 @@ browser.contextMenus.onClicked.addListener(async (info, tab) => {
console
.
log
(
`📩 Texte sélectionné dans le menu du navigateur :
${
info
.
selectionText
}
`
);
switch
(
info
.
menuItemId
)
{
//
1) Vérifier si le mot est
dans le lexique
case
"
searchLexicon
"
:
console
.
log
(
"
🔍 Recherche dans le lexique :
"
,
info
.
selectionText
);
//
Recherche
dans le
s
lexique
s de l’utilisateur
case
"
search
In
Lexicon
s
"
:
console
.
log
(
"
🔍 Recherche
du mot
dans le
s
lexique
s
:
"
,
info
.
selectionText
);
if
(
authToken
)
{
await
searchLexicon
(
info
.
selectionText
);
await
search
In
Lexicon
s
(
info
.
selectionText
);
}
else
{
alert
(
"
⚠️ Vous devez être connecté pour utiliser cette fonction.
"
);
}
break
;
// 2) Vérifier dans quels lexiques le mot est présent
case
"
checkLexicon
"
:
console
.
log
(
"
📋 Vérification des lexiques :
"
,
info
.
selectionText
);
if
(
authToken
)
{
await
checkLexicon
(
info
.
selectionText
);
}
else
{
alert
(
"
⚠️ Vous devez être connecté pour utiliser cette fonction.
"
);
}
break
;
// 4) Un seul bouton pour une définition (Lexiques + Wiki)
// Un seul bouton pour une définition (Lexiques + Wiki)
case
"
getDefinitionAll
"
:
console
.
log
(
"
🌐 Recherche de définition :
"
,
info
.
selectionText
);
await
getDefinitionAll
(
info
.
selectionText
);
...
...
@@ -222,7 +204,7 @@ async function getDefinitionFromWiktionary(selectedText) {
*/
async
function
searchLexicon
(
selectedText
)
{
try
{
const
lexicons
=
await
get
User
Lexicons
(
authToken
);
const
lexicons
=
await
getLexicons
(
authToken
);
console
.
log
(
"
📚 Lexiques récupérés :
"
,
lexicons
);
const
frenchLexicon
=
lexicons
.
find
((
lexicon
)
=>
lexicon
.
language
===
"
fr
"
);
...
...
@@ -270,6 +252,44 @@ async function checkLexicon(selectedText) {
}
}
// ─────────────────────────────────────────────────────────────────────────────
// ▌ Fonction combinée : Recherche du mot dans les lexiques
// ─────────────────────────────────────────────────────────────────────────────
async
function
searchInLexicons
(
selectedText
)
{
try
{
console
.
log
(
"
🔎 Vérification des lexiques pour :
"
,
selectedText
);
const
lexicons
=
await
getLexiconEntries
(
authToken
);
if
(
!
lexicons
.
length
)
{
alert
(
"
⚠️ Aucun lexique disponible.
"
);
return
;
}
let
foundInLexicons
=
[];
for
(
const
lexicon
of
lexicons
)
{
const
entries
=
await
getLexiconEntries
(
authToken
,
lexicon
.
id
);
const
isWordPresent
=
entries
.
some
(
(
entry
)
=>
entry
.
graphy
.
toLowerCase
()
===
selectedText
.
toLowerCase
()
);
if
(
isWordPresent
)
{
foundInLexicons
.
push
(
lexicon
.
name
);
}
}
if
(
foundInLexicons
.
length
>
0
)
{
alert
(
`✅ Le mot "
${
selectedText
}
" est présent dans les lexiques suivants :\n\n-
${
foundInLexicons
.
join
(
"
\n
-
"
)}
`
);
}
else
{
alert
(
`❌ Le mot "
${
selectedText
}
" n'est pas présent dans vos lexiques.`
);
}
}
catch
(
error
)
{
console
.
error
(
"
❌ Erreur lors de la recherche dans les lexiques :
"
,
error
);
alert
(
"
❌ Une erreur est survenue lors de la recherche.
"
);
}
}
// ─────────────────────────────────────────────────────────────────────────────
// ▌ Listeners supplémentaires
// ─────────────────────────────────────────────────────────────────────────────
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment