#!/bin/bash
# Script pour créer la page Next.js /team et modifier Navigation
# Ne pas utiliser set -e car on veut gérer les erreurs manuellement
TECHRADAR_DIR=".techradar"
TEAM_PAGE="$TECHRADAR_DIR/src/pages/team.tsx"
NAV_FILE="$TECHRADAR_DIR/src/components/Navigation/Navigation.tsx"
echo "📁 TECHRADAR_DIR: $TECHRADAR_DIR"
echo "📄 TEAM_PAGE: $TEAM_PAGE"
echo "📄 NAV_FILE: $NAV_FILE"
# Créer la page team.tsx qui charge team.html via iframe (plus simple et fiable)
if [ ! -f "$TEAM_PAGE" ]; then
mkdir -p "$(dirname "$TEAM_PAGE")"
cat > "$TEAM_PAGE" << 'EOF'
import Head from "next/head";
import { CustomPage } from "@/pages/_app";
const TeamPage: CustomPage = () => {
return (
<>
Équipe & Technologies - Laplank
>
);
};
export default TeamPage;
EOF
echo "✅ Page team.tsx créée (iframe)"
else
echo "ℹ️ Page team.tsx existe déjà"
fi
# Modifier Navigation.tsx pour ajouter le lien
if [ -f "$NAV_FILE" ]; then
echo "📝 Navigation.tsx trouvé, vérification du lien..."
if ! grep -q 'href="/team"' "$NAV_FILE"; then
echo "➕ Ajout du lien Équipe dans Navigation.tsx..."
echo "📄 Contenu actuel de Navigation.tsx (extrait):"
grep -A 5 -B 5 "overview" "$NAV_FILE" || echo "Pattern 'overview' non trouvé"
# Utiliser sed pour une modification plus simple et fiable
# Chercher la ligne avec après overview et insérer le nouveau lien avant le commentaire
sed -i '/href="\/overview"/,/<\/Link>/ {
/<\/Link>/a\
\
\
👥 Équipe\
\
}' "$NAV_FILE"
# Vérifier que la modification a réussi
if grep -q 'href="/team"' "$NAV_FILE"; then
echo "✅ Lien Équipe ajouté au composant Navigation"
echo "📄 Vérification du contenu modifié:"
grep -A 3 'href="/team"' "$NAV_FILE"
else
echo "❌ Échec: Lien Équipe non trouvé après modification avec sed"
echo "🔄 Tentative avec Python..."
# Fallback avec Python
python3 << 'PYTHON_SCRIPT'
import re
import sys
nav_file = sys.argv[1]
print(f"📝 Modification de {nav_file} avec Python")
try:
with open(nav_file, 'r') as f:
lines = f.readlines()
# Trouver l'index de la ligne avec après overview
insert_index = -1
for i, line in enumerate(lines):
if 'href="/overview"' in line:
# Chercher la ligne qui suit
for j in range(i, min(i+10, len(lines))):
if '' in lines[j] and '' in lines[j+1] if j+1 < len(lines) else False:
insert_index = j + 2 # Après
break
break
if insert_index > 0:
# Insérer le nouveau lien
new_lines = [
'
\n',
' \n',
' 👥 Équipe\n',
' \n',
'
\n'
]
lines[insert_index:insert_index] = new_lines
with open(nav_file, 'w') as f:
f.writelines(lines)
print("✅ Navigation.tsx modifié avec succès (Python)")
else:
print("❌ Impossible de trouver l'emplacement pour insérer le lien")
print("Contenu autour de overview:")
for i, line in enumerate(lines):
if 'overview' in line.lower():
for j in range(max(0, i-2), min(len(lines), i+10)):
print(f"{j}: {lines[j]}", end='')
break
sys.exit(1)
except Exception as e:
print(f"❌ Erreur lors de la modification: {e}")
import traceback
traceback.print_exc()
sys.exit(1)
PYTHON_SCRIPT
"$NAV_FILE"
# Vérifier à nouveau
if grep -q 'href="/team"' "$NAV_FILE"; then
echo "✅ Lien Équipe ajouté au composant Navigation (Python)"
else
echo "❌ Échec: Lien Équipe non trouvé après modification"
echo "📄 Contenu actuel de Navigation.tsx:"
cat "$NAV_FILE"
return 1 # Utiliser return au lieu de exit
fi
fi
else
echo "ℹ️ Lien Équipe déjà présent dans Navigation"
fi
else
echo "❌ Navigation.tsx non trouvé: $NAV_FILE"
echo "📁 Contenu du dossier:"
ls -la "$(dirname "$NAV_FILE")" 2>/dev/null || echo "Dossier non trouvé"
return 1 # Utiliser return au lieu de exit
fi
# Retourner 0 pour indiquer le succès
return 0