test
This commit is contained in:
parent
fb78962fc1
commit
a87e165f97
263
Vue/gabarit.php
263
Vue/gabarit.php
|
|
@ -554,137 +554,138 @@ foreach ($menus as $key0 => $menuParent) {
|
|||
|
||||
<!-- Service Worker Registration -->
|
||||
<script src="/Js/sw-register.js?ver=2025.12.22.00"></script>
|
||||
|
||||
<script>
|
||||
// Test du système de menus
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
console.group('=== TEST SYSTÈME DE MENUS ===');
|
||||
|
||||
// Vérifier l'état initial
|
||||
const activeMenuId = window.appConfig?.activeParentId !== null ?
|
||||
`submenu${window.appConfig.activeParentId}` : null;
|
||||
|
||||
console.log('Menu actif configuré:', activeMenuId);
|
||||
console.log('Page active:', window.appConfig?.activeLink);
|
||||
|
||||
// Compter les menus ouverts
|
||||
const openMenus = document.querySelectorAll('.nav-submenu.show');
|
||||
console.log('Menus initialement ouverts:', openMenus.length);
|
||||
|
||||
openMenus.forEach(menu => {
|
||||
console.log(' -', menu.id);
|
||||
});
|
||||
|
||||
// Vérifier que seul le menu actif est ouvert
|
||||
if (openMenus.length > 1) {
|
||||
console.warn('⚠️ Plusieurs menus sont ouverts!');
|
||||
console.warn('Seul le menu', activeMenuId, 'devrait être ouvert.');
|
||||
|
||||
// Corriger automatiquement
|
||||
if (activeMenuId && window.appNavigation) {
|
||||
console.log('Correction automatique en cours...');
|
||||
window.appNavigation.closeAllExceptActive();
|
||||
}
|
||||
} else if (openMenus.length === 1 && openMenus[0].id === activeMenuId) {
|
||||
console.log('✅ Parfait! Seul le menu actif est ouvert.');
|
||||
} else if (openMenus.length === 0 && !activeMenuId) {
|
||||
console.log('✅ Aucun menu ouvert - Comportement attendu.');
|
||||
}
|
||||
|
||||
// Exposer des fonctions de test
|
||||
window.menuTest = {
|
||||
openAllMenus: function() {
|
||||
document.querySelectorAll('.nav-submenu').forEach(menu => {
|
||||
menu.classList.add('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
if (link) link.setAttribute('aria-expanded', 'true');
|
||||
});
|
||||
console.log('Tous les menus ouverts (test)');
|
||||
},
|
||||
|
||||
closeAllMenus: function() {
|
||||
document.querySelectorAll('.nav-submenu').forEach(menu => {
|
||||
menu.classList.remove('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
if (link) link.setAttribute('aria-expanded', 'false');
|
||||
});
|
||||
console.log('Tous les menus fermés (test)');
|
||||
},
|
||||
|
||||
showMenuState: function() {
|
||||
const menus = document.querySelectorAll('.nav-submenu');
|
||||
console.log('État des menus:');
|
||||
menus.forEach(menu => {
|
||||
const isOpen = menu.classList.contains('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
const ariaExpanded = link ? link.getAttribute('aria-expanded') : 'N/A';
|
||||
console.log(` ${menu.id}: ${isOpen ? 'OUVERT' : 'FERMÉ'} (aria-expanded: ${ariaExpanded})`);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
console.groupEnd();
|
||||
|
||||
// Ajouter un indicateur visuel de débogage
|
||||
if (window.appConfig?.debugMode) {
|
||||
const debugIndicator = document.createElement('div');
|
||||
debugIndicator.style.cssText = `
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
background: rgba(0,0,0,0.8);
|
||||
color: #0f0;
|
||||
padding: 5px 10px;
|
||||
border-radius: 4px;
|
||||
font-family: monospace;
|
||||
font-size: 12px;
|
||||
z-index: 9999;
|
||||
pointer-events: none;
|
||||
`;
|
||||
debugIndicator.textContent = `Menu: ${activeMenuId || 'Aucun'}`;
|
||||
document.body.appendChild(debugIndicator);
|
||||
}
|
||||
});
|
||||
|
||||
// Fonction globale pour tester depuis la console
|
||||
function testMenuSystem() {
|
||||
console.log('=== TEST MANUEL DU SYSTÈME DE MENUS ===');
|
||||
|
||||
if (!window.appNavigation) {
|
||||
console.error('appNavigation non disponible');
|
||||
return;
|
||||
}
|
||||
|
||||
// Test 1: Fermer tous les menus
|
||||
console.log('Test 1: Fermeture de tous les menus...');
|
||||
window.appNavigation.closeAllMenus();
|
||||
|
||||
// Test 2: Ouvrir le menu actif
|
||||
setTimeout(() => {
|
||||
const activeId = window.appConfig?.activeParentId !== null ?
|
||||
`submenu${window.appConfig.activeParentId}` : null;
|
||||
|
||||
if (activeId) {
|
||||
console.log('Test 2: Ouverture du menu actif:', activeId);
|
||||
window.appNavigation.openMenuById(activeId);
|
||||
}
|
||||
|
||||
// Test 3: Vérification finale
|
||||
setTimeout(() => {
|
||||
const openMenus = document.querySelectorAll('.nav-submenu.show').length;
|
||||
console.log('Test 3: Résultat -', openMenus, 'menu(s) ouvert(s)');
|
||||
|
||||
if (openMenus === 1 || (openMenus === 0 && !activeId)) {
|
||||
console.log('✅ Système de menus fonctionne correctement!');
|
||||
} else {
|
||||
console.warn('⚠️ Problème détecté avec le système de menus');
|
||||
}
|
||||
}, 500);
|
||||
}, 500);
|
||||
}
|
||||
|
||||
// Exposer la fonction de test
|
||||
window.testMenuSystem = testMenuSystem;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<script>
|
||||
// Test du système de menus
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
console.group('=== TEST SYSTÈME DE MENUS ===');
|
||||
|
||||
// Vérifier l'état initial
|
||||
const activeMenuId = window.appConfig?.activeParentId !== null ?
|
||||
`submenu${window.appConfig.activeParentId}` : null;
|
||||
|
||||
console.log('Menu actif configuré:', activeMenuId);
|
||||
console.log('Page active:', window.appConfig?.activeLink);
|
||||
|
||||
// Compter les menus ouverts
|
||||
const openMenus = document.querySelectorAll('.nav-submenu.show');
|
||||
console.log('Menus initialement ouverts:', openMenus.length);
|
||||
|
||||
openMenus.forEach(menu => {
|
||||
console.log(' -', menu.id);
|
||||
});
|
||||
|
||||
// Vérifier que seul le menu actif est ouvert
|
||||
if (openMenus.length > 1) {
|
||||
console.warn('⚠️ Plusieurs menus sont ouverts!');
|
||||
console.warn('Seul le menu', activeMenuId, 'devrait être ouvert.');
|
||||
|
||||
// Corriger automatiquement
|
||||
if (activeMenuId && window.appNavigation) {
|
||||
console.log('Correction automatique en cours...');
|
||||
window.appNavigation.closeAllExceptActive();
|
||||
}
|
||||
} else if (openMenus.length === 1 && openMenus[0].id === activeMenuId) {
|
||||
console.log('✅ Parfait! Seul le menu actif est ouvert.');
|
||||
} else if (openMenus.length === 0 && !activeMenuId) {
|
||||
console.log('✅ Aucun menu ouvert - Comportement attendu.');
|
||||
}
|
||||
|
||||
// Exposer des fonctions de test
|
||||
window.menuTest = {
|
||||
openAllMenus: function() {
|
||||
document.querySelectorAll('.nav-submenu').forEach(menu => {
|
||||
menu.classList.add('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
if (link) link.setAttribute('aria-expanded', 'true');
|
||||
});
|
||||
console.log('Tous les menus ouverts (test)');
|
||||
},
|
||||
|
||||
closeAllMenus: function() {
|
||||
document.querySelectorAll('.nav-submenu').forEach(menu => {
|
||||
menu.classList.remove('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
if (link) link.setAttribute('aria-expanded', 'false');
|
||||
});
|
||||
console.log('Tous les menus fermés (test)');
|
||||
},
|
||||
|
||||
showMenuState: function() {
|
||||
const menus = document.querySelectorAll('.nav-submenu');
|
||||
console.log('État des menus:');
|
||||
menus.forEach(menu => {
|
||||
const isOpen = menu.classList.contains('show');
|
||||
const link = document.querySelector(`[href="#${menu.id}"]`);
|
||||
const ariaExpanded = link ? link.getAttribute('aria-expanded') : 'N/A';
|
||||
console.log(` ${menu.id}: ${isOpen ? 'OUVERT' : 'FERMÉ'} (aria-expanded: ${ariaExpanded})`);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
console.groupEnd();
|
||||
|
||||
// Ajouter un indicateur visuel de débogage
|
||||
if (window.appConfig?.debugMode) {
|
||||
const debugIndicator = document.createElement('div');
|
||||
debugIndicator.style.cssText = `
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 10px;
|
||||
background: rgba(0,0,0,0.8);
|
||||
color: #0f0;
|
||||
padding: 5px 10px;
|
||||
border-radius: 4px;
|
||||
font-family: monospace;
|
||||
font-size: 12px;
|
||||
z-index: 9999;
|
||||
pointer-events: none;
|
||||
`;
|
||||
debugIndicator.textContent = `Menu: ${activeMenuId || 'Aucun'}`;
|
||||
document.body.appendChild(debugIndicator);
|
||||
}
|
||||
});
|
||||
|
||||
// Fonction globale pour tester depuis la console
|
||||
function testMenuSystem() {
|
||||
console.log('=== TEST MANUEL DU SYSTÈME DE MENUS ===');
|
||||
|
||||
if (!window.appNavigation) {
|
||||
console.error('appNavigation non disponible');
|
||||
return;
|
||||
}
|
||||
|
||||
// Test 1: Fermer tous les menus
|
||||
console.log('Test 1: Fermeture de tous les menus...');
|
||||
window.appNavigation.closeAllMenus();
|
||||
|
||||
// Test 2: Ouvrir le menu actif
|
||||
setTimeout(() => {
|
||||
const activeId = window.appConfig?.activeParentId !== null ?
|
||||
`submenu${window.appConfig.activeParentId}` : null;
|
||||
|
||||
if (activeId) {
|
||||
console.log('Test 2: Ouverture du menu actif:', activeId);
|
||||
window.appNavigation.openMenuById(activeId);
|
||||
}
|
||||
|
||||
// Test 3: Vérification finale
|
||||
setTimeout(() => {
|
||||
const openMenus = document.querySelectorAll('.nav-submenu.show').length;
|
||||
console.log('Test 3: Résultat -', openMenus, 'menu(s) ouvert(s)');
|
||||
|
||||
if (openMenus === 1 || (openMenus === 0 && !activeId)) {
|
||||
console.log('✅ Système de menus fonctionne correctement!');
|
||||
} else {
|
||||
console.warn('⚠️ Problème détecté avec le système de menus');
|
||||
}
|
||||
}, 500);
|
||||
}, 500);
|
||||
}
|
||||
|
||||
// Exposer la fonction de test
|
||||
window.testMenuSystem = testMenuSystem;
|
||||
</script>
|
||||
Loading…
Reference in New Issue
Block a user