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

Masquage fonctionnalités si analyse désactivée

parent 5709b20f
No related branches found
No related tags found
1 merge request!8Test final
......@@ -155,7 +155,7 @@ async function updateExtension() {
// Mise à jour du bouton des statistiques
if (toggleStatsBtn) {
const isEnabled = isLoggedIn && extensionActive;
toggleStatsBtn.textContent = isTrackingActive ? "Désactiver les statistiques" : "Activer les statistiques";
toggleStatsBtn.textContent = isEnabled && isTrackingActive ? "Désactiver les statistiques" : "Activer les statistiques";
toggleStatsBtn.style.pointerEvents = isEnabled ? "auto" : "none";
toggleStatsBtn.disabled = !isEnabled;
toggleStatsBtn.style.position = "relative";
......@@ -249,6 +249,7 @@ async function proceedToggleExtension() {
});
const newState = !extensionActive;
await browser.storage.local.set({ extensionActive: newState });
browser.runtime.sendMessage({ action: "updateUI", extensionActive: newState });
if (!newState) {
await browser.storage.local.set({ isTrackingActive: false });
......
......@@ -406,6 +406,11 @@
color: red !important;
font-weight: bold;
}
#messageContainer {
display: none;
text-align: center;
color: #323046;
}
</style>
</head>
<body>
......@@ -479,7 +484,7 @@
<h4>🌍 Wiktionnaire</h4>
<ul id="wiktionnaireList"></ul>
</div>
<!-- Fenêtre modale cachée -->
<div id="modalOverlay" class="modal-overlay">
<div class="modal-content">
......@@ -490,5 +495,10 @@
</div>
</div>
<!-- Bloc 4 : Message d'analyse désactivée -->
<div id="messageContainer">
<p id="analysisMessage"></p>
</div>
</body>
</html>
......@@ -81,7 +81,11 @@ async function refreshSidebarState() {
toggleElementsVisibility(isLoggedIn);
toggleHighlightMessage(isLoggedIn);
const isAnalysisEnabled = await checkAnalysisStatus();
if (isLoggedIn) {
hideBlocks(!isAnalysisEnabled);
if (!window.lexiconColorsUpdated) {
await updateLexiconColors(authToken);
window.lexiconColorsUpdated = true;
......@@ -89,18 +93,8 @@ async function refreshSidebarState() {
await fetchLexicons();
} else {
// Si l'utilisateur n'est pas connecté, on ferme tous les blocs
document.querySelectorAll('.block-content').forEach(block => {
block.classList.add('hidden');
// Mise à jour des boutons de bascule associés pour afficher le symbole "+"
const header = block.previousElementSibling;
if (header) {
const toggleBtn = header.querySelector(".toggle-btn");
if (toggleBtn) {
toggleBtn.textContent = '+';
}
}
});
hideBlocks(true); // Masquer tous les blocs
const lexiquesContainer = document.getElementById("lexiques");
if (lexiquesContainer) {
lexiquesContainer.textContent = "Veuillez vous connecter pour voir vos lexiques.";
......@@ -113,6 +107,19 @@ async function refreshSidebarState() {
}
}
// Afficher le message d'activation de l'analyse si l'utilisateur est déconnecté ou si l'analyse est désactivée
const messageContainer = document.getElementById("messageContainer");
if (!isLoggedIn || !isAnalysisEnabled) {
if (messageContainer) {
messageContainer.style.display = "block";
messageContainer.innerHTML = "Pour utiliser l'extension, activez l'analyse dans le menu d'extension.";
}
} else {
if (messageContainer) {
messageContainer.style.display = "none"; // Cacher le message si l'analyse est activée
}
}
log("✅ Barre latérale actualisée. Utilisateur connecté :", isLoggedIn);
}
......@@ -177,6 +184,28 @@ function closeBlock(blockId, btn) {
}
}
function hideBlocks(shouldHide) {
const blockIds = ["menu", "etat", "definitionContainer"];
blockIds.forEach(blockId => {
const block = document.getElementById(blockId);
if (block) {
if (shouldHide) {
block.classList.add("hidden"); // Masquer le bloc
} else {
block.classList.remove("hidden"); // Afficher le bloc
}
}
});
const messageContainer = document.getElementById("messageContainer");
const analysisMessage = document.getElementById("analysisMessage");
if (shouldHide) {
messageContainer.style.display = "block";
analysisMessage.innerHTML = "L'analyse est <strong>désactivée</strong>.<br><br>Pour utiliser l'extension, activez l'analyse dans le menu d'extension.<br><br>Vous pouvez aussi fermer ce panneau si vous ne souhaitez pas utiliser l'extension.";
} else {
messageContainer.style.display = "none";
}
}
// ─────────────────────────────────────────────────────────────────────────────
// ▌ Gestion des lexiques (Affichage)
......@@ -600,7 +629,13 @@ browser.runtime.onMessage.addListener(async (message) => {
break;
case "updateUI":
await refreshSidebarState();
if (!message.extensionActive) {
// Fermer tous les blocs
hideBlocks(true);
} else {
hideBlocks(false);
await refreshSidebarState();
}
break;
case "pyodide-simplemma-ready":
......@@ -611,9 +646,7 @@ browser.runtime.onMessage.addListener(async (message) => {
break;
case "closeSidebarBlocks":
closeBlock("menuContent");
closeBlock("etatContent");
closeBlock("definitionContent")
hideBlocks(true);
break;
}
......@@ -787,3 +820,8 @@ async function toggleLexiconHighlight(lexiconId, isActive) {
log(`❌ Erreur lors du toggle du surlignage pour le lexique ${lexiconId}:`, error);
}
}
async function checkAnalysisStatus() {
const { extensionActive } = await browser.storage.local.get("extensionActive");
return extensionActive; // Retourne true si l'analyse est activée, sinon false
}
......@@ -5,7 +5,7 @@
(function () {
if (typeof window !== 'undefined') {
if (typeof window.DEBUG === 'undefined') {
window.DEBUG = false; // true en debug
window.DEBUG = true; // 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 = false; // true en debug
self.DEBUG = true; // true en debug
}
if (!self.log) {
function log(...args) {
......
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