diff --git a/Dockerfile.business b/Dockerfile.business index 16e0aed..f8f9921 100644 --- a/Dockerfile.business +++ b/Dockerfile.business @@ -118,13 +118,56 @@ export default TeamPage; EOF RUN echo "✅ Page team.tsx créée" -# Script Python pour ajouter le lien Équipe dans Navigation.tsx +# Script Python pour ajouter le lien Équipe dans Navigation.tsx (évite les doublons) RUN cat > /tmp/add_team_link.py << 'PYEOF' import sys +import re f = ".techradar/src/components/Navigation/Navigation.tsx" with open(f, 'r') as file: - lines = file.readlines() + content = file.read() +# Vérifier si le lien existe déjà (compter les occurrences) +team_link_count = len(re.findall(r'href=["\']/team["\']', content)) +if team_link_count > 0: + print(f"ℹ️ Lien Équipe déjà présent ({team_link_count} occurrence(s))") + # Si plusieurs occurrences, supprimer les doublons + if team_link_count > 1: + print("⚠️ Détection de doublons, nettoyage...") + lines = content.split('\n') + new_lines = [] + in_team_link = False + team_link_added = False + skip_until_close = False + + for i, line in enumerate(lines): + if 'href="/team"' in line or "href='/team'" in line: + if not team_link_added: + # Garder la première occurrence + in_team_link = True + team_link_added = True + new_lines.append(line) + else: + # Ignorer les doublons + skip_until_close = True + continue + elif skip_until_close: + if '' in line: + skip_until_close = False + continue + elif in_team_link: + new_lines.append(line) + if '' in line: + in_team_link = False + else: + new_lines.append(line) + + with open(f, 'w') as file: + file.write('\n'.join(new_lines)) + print("✅ Doublons supprimés") + sys.exit(0) + +# Si le lien n'existe pas, l'ajouter +lines = content.split('\n') insert_idx = -1 for i, line in enumerate(lines): if 'href="/overview"' in line: @@ -136,28 +179,36 @@ for i, line in enumerate(lines): if insert_idx > 0: new_lines = lines[:insert_idx] + [ - '
  • \n', - ' \n', - ' 👥 Équipe\n', - ' \n', - '
  • \n' + '
  • ', + ' ', + ' 👥 Équipe', + ' ', + '
  • ' ] + lines[insert_idx:] with open(f, 'w') as file: - file.writelines(new_lines) - print("✅ Navigation.tsx modifié") + file.write('\n'.join(new_lines)) + print("✅ Navigation.tsx modifié - lien Équipe ajouté") sys.exit(0) else: print("❌ Impossible de trouver l'emplacement") sys.exit(1) PYEOF -# Modifier Navigation.tsx pour ajouter le lien Équipe -RUN if ! grep -q 'href="/team"' .techradar/src/components/Navigation/Navigation.tsx; then \ - echo "➕ Ajout du lien Équipe dans Navigation.tsx..." && \ - python3 /tmp/add_team_link.py && \ - grep -q 'href="/team"' .techradar/src/components/Navigation/Navigation.tsx && echo "✅ Lien Équipe ajouté" || (echo "❌ Lien Équipe non trouvé" && cat .techradar/src/components/Navigation/Navigation.tsx && exit 1); \ +# Modifier Navigation.tsx pour ajouter le lien Équipe (le script Python gère les doublons) +RUN echo "🔧 Modification de Navigation.tsx pour le lien Équipe..." && \ + python3 /tmp/add_team_link.py && \ + team_count=$$(grep -c 'href="/team"' .techradar/src/components/Navigation/Navigation.tsx || echo "0") && \ + if [ "$$team_count" -eq "1" ]; then \ + echo "✅ Lien Équipe présent (1 occurrence)"; \ + elif [ "$$team_count" -gt "1" ]; then \ + echo "⚠️ Plusieurs occurrences détectées ($$team_count), le script Python devrait les avoir nettoyées"; \ + python3 /tmp/add_team_link.py; \ + final_count=$$(grep -c 'href="/team"' .techradar/src/components/Navigation/Navigation.tsx || echo "0") && \ + echo "✅ Après nettoyage: $$final_count occurrence(s)"; \ else \ - echo "ℹ️ Lien Équipe déjà présent dans Navigation.tsx"; \ + echo "❌ Lien Équipe non trouvé après modification" && \ + cat .techradar/src/components/Navigation/Navigation.tsx && \ + exit 1; \ fi # Builder l'application en mode production pour éviter Fast Refresh