<?php
// Cargar PHPMailer si existe
$vendorPath = dirname(dirname(__DIR__)) . '/vendor/autoload.php';
if (file_exists($vendorPath)) {
    require_once $vendorPath;
} else {
    die('PHPMailer no está instalado. Ejecuta: composer require phpmailer/phpmailer');
}

// Cargar configuración de correo
require_once __DIR__ . '/../config/configMail.php';

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

function enviarCorreo($destinatario, $asunto, $mensaje, $nombre = null) {
    echo "destinatario: " . $destinatario . "<br>";
    echo "asunto: " . $asunto . "<br>";
    echo "mensaje: " . $mensaje . "<br>";
    echo "nombre: " . $nombre . "<br>";
    
    global $config;
    
    $mail = new PHPMailer(true);
    try {
        $mail->isSMTP();
        $mail->Host       = $config['mail']['host'];
        $mail->SMTPAuth   = $config['mail']['smtp_auth'];
        $mail->Username   = $config['mail']['username'];
        $mail->Password   = $config['mail']['password'];
        $mail->SMTPSecure = $config['mail']['secure'];
        $mail->Port       = $config['mail']['port'];
        
        $mail->setFrom($config['mail']['from_email'], $config['mail']['from_name']);
        $mail->addAddress($destinatario, $nombre ?? '');
        
        $mail->isHTML(true);
        $mail->Subject = $asunto;
        $mail->Body    = $mensaje;
        
        $mail->send();
        return true;
    } catch (Exception $e) {
        echo "Error al enviar el correo: {$mail->ErrorInfo} | {$e}";
        return "Error al enviar el correo: {$mail->ErrorInfo} | {$e}";
    }
}
?>