#!/bin/bash

# Arrête l'exécution du script si une commande échoue
set -e

# === Charger utils, config & .env ===
# Charge les fonctions utilitaires communes
source ./config/richkit/scripts/utils.sh
# Charge la configuration des thèmes
source_config
# Vérifie la présence du fichier .env
check_env_file
# Charge les variables d'environnement
load_env

echo
echo "🗑️  Désinstallation complète de WordPress..."

# === Vérifier qu'aucun thème custom n'est encore installé ===
# Parcourt tous les thèmes configurés pour s'assurer qu'ils sont désinstallés
for key in "${!THEMES[@]}"; do
  if wp theme is-installed "$key" >/dev/null 2>&1; then
    echo "⚠️  Le thème '$key' est encore installé. Supprime-le d'abord avec : ./caddy.sh remove $key"
    exit 1
  fi
done

# Demande confirmation avant de procéder à la désinstallation
# Avertit que les fichiers seront supprimés sauf les .gitkeep
ask_confirm "Cette action va supprimer les fichiers de themes, de WordPress et de vendor (à l'exception des .gitkeep dans /app/plugins et /app/themes/)."

# === Supprimer web/app/ sauf .gitkeep ===
echo
echo "🧹 Suppression du contenu de web/app/ (sauf .gitkeep)..."
# Supprime tout le contenu de web/app/
rm -rf web/app/*
# Recrée les dossiers nécessaires
mkdir -p web/app/plugins web/app/themes
# Recrée les fichiers .gitkeep pour maintenir la structure git
touch web/app/plugins/.gitkeep
touch web/app/themes/.gitkeep

# === Supprimer WP core, vendor et composer.lock ===
echo
echo "🧹 Suppression du dossier WordPress..."
# Supprime le dossier WordPress
rm -rf web/wp

echo
echo "🗑️  Suppression du dossier vendor et de composer.lock..."
# Supprime les dépendances Composer
rm -rf vendor
# Supprime le fichier de verrouillage Composer
rm -f composer.lock

echo
echo "✅ WordPress désinstallé proprement."
echo "⚠️  La base de données est à vider manuellement."
