diff --git a/Dockerfile.business b/Dockerfile.business index 9f0292e..e133730 100644 --- a/Dockerfile.business +++ b/Dockerfile.business @@ -101,25 +101,113 @@ RUN echo "📊 Comptage des fichiers .md dans .techradar/data/radar" && \ # La page Next.js pour le routing, le HTML statique pour garantir l'affichage RUN mkdir -p .techradar/src/pages && \ cat > .techradar/src/pages/team.tsx << 'EOF' -import { useEffect } from 'react'; +import { useEffect, useState } from 'react'; export default function TeamPage() { + const [content, setContent] = useState(''); + useEffect(() => { - // Redirection immédiate vers team.html - // Cela évite les conflits avec les scripts JavaScript - if (typeof window !== 'undefined') { - console.log('🔄 TEAM PAGE: Redirection vers /team.html'); - window.location.replace('/team.html'); - } + // Charger le contenu de team.html directement + console.log('🔄 TEAM PAGE: Chargement direct du contenu team.html'); + + fetch('/team.html') + .then(response => { + console.log('📡 TEAM PAGE: Réponse team.html:', response.status); + if (!response.ok) throw new Error(`HTTP ${response.status}`); + return response.text(); + }) + .then(html => { + console.log('✅ TEAM PAGE: Contenu team.html chargé, injection dans DOM'); + setContent(html); + + // Injecter le HTML dans le document après un court délai + setTimeout(() => { + const tempDiv = document.createElement('div'); + tempDiv.innerHTML = html; + + // Extraire et exécuter les scripts + const scripts = tempDiv.querySelectorAll('script'); + scripts.forEach(script => { + if (script.src) { + // Script externe - charger dynamiquement + const newScript = document.createElement('script'); + newScript.src = script.src; + document.head.appendChild(newScript); + console.log('🔧 TEAM PAGE: Script externe chargé:', script.src); + } else { + // Script inline - exécuter directement + try { + eval(script.textContent); + console.log('▶️ TEAM PAGE: Script inline exécuté'); + } catch (error) { + console.error('❌ TEAM PAGE: Erreur script inline:', error); + } + } + }); + + // Injecter le CSS + const styles = tempDiv.querySelectorAll('style'); + styles.forEach(style => { + document.head.appendChild(style.cloneNode(true)); + }); + + // Injecter le contenu HTML (sans les scripts/styles déjà traités) + const bodyContent = tempDiv.querySelector('body'); + if (bodyContent) { + document.body.innerHTML = bodyContent.innerHTML; + console.log('✅ TEAM PAGE: Contenu HTML injecté'); + } + }, 100); + }) + .catch(error => { + console.error('❌ TEAM PAGE: Erreur chargement team.html:', error); + setContent(` +
Impossible de charger les visualisations équipe.
+Erreur: ${error.message}
+ +