#!/bin/bash

# Script de conversion Markdown → HTML5 avec Pandoc
# Utilise template.html et style.css dans le dossier du script
# Copie tous les fichiers .css dans le dossier html

# Vérifie que pandoc est installé
if ! command -v pandoc &> /dev/null; then
    echo "Erreur : pandoc n'est pas installé."
    exit 1
fi

# Sélection du dossier contenant les fichiers Markdown
read -rp "Chemin du dossier contenant les fichiers Markdown : " INPUT_DIR

# Vérifie que le dossier existe
if [[ ! -d "$INPUT_DIR" ]]; then
    echo "Erreur : dossier introuvable."
    exit 1
fi

# Dossier de sortie
OUTPUT_DIR="$INPUT_DIR/html"
mkdir -p "$OUTPUT_DIR"

# Chemins vers le template et le CSS (dans le même dossier que le script)
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
TEMPLATE="$SCRIPT_DIR/template.html"
CSS="$SCRIPT_DIR/style.css"

# Vérifie que le template et le CSS existent
if [[ ! -f "$TEMPLATE" || ! -f "$CSS" ]]; then
    echo "Erreur : template.html ou style.css manquant dans $SCRIPT_DIR"
    exit 1
fi

# Conversion des fichiers .md
for mdfile in "$INPUT_DIR"/*.md; do
    [[ -e "$mdfile" ]] || continue
    filename=$(basename "$mdfile" .md)
    pandoc "$mdfile" \
        --from markdown \
        --to html5 \
        --template "$TEMPLATE" \
        --css "$(basename "$CSS")" \
        --output "$OUTPUT_DIR/$filename.html"
    echo "Converti : $filename.md → $filename.html"
done

# Copie tous les fichiers .css du dossier du script vers le dossier html
find "$SCRIPT_DIR" -maxdepth 1 -type f -name "*.css" -exec cp {} "$OUTPUT_DIR" \;
echo "Feuilles de style copiées dans : $OUTPUT_DIR"

echo "Conversion terminée. Fichiers HTML et CSS disponibles dans : $OUTPUT_DIR"
