<?php
/**
 * Club Dorado Senior - Manejador de formulario de contacto
 * Archivo: send.php
 * 
 * CONFIGURACIÓN: Cambia los valores en la sección CONFIG antes de subir al servidor.
 */

// ======================================================
// CONFIG — MODIFICA ESTOS VALORES
// ======================================================
define('DESTINATARIO',     'info@clubdoradosenior.com');   // Email donde llegan los mensajes
define('REMITENTE_NOMBRE', 'Club Dorado Senior - Web');
define('REMITENTE_EMAIL',  'no-reply@clubdoradosenior.com'); // Debe ser del mismo dominio en cPanel
define('ASUNTO_PREFIX',    '[Club Dorado] Nuevo mensaje de contacto');
// ======================================================

header('Content-Type: application/json; charset=utf-8');

// Solo aceptar POST
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    echo json_encode(['success' => false, 'error' => 'Método no permitido']);
    exit;
}

// Función de sanitización
function limpiar(string $valor): string {
    return htmlspecialchars(strip_tags(trim($valor)), ENT_QUOTES, 'UTF-8');
}

// Recoger y limpiar datos
$nombre   = limpiar($_POST['nombre']   ?? '');
$telefono = limpiar($_POST['telefono'] ?? '');
$email    = limpiar($_POST['email']    ?? '');
$servicio = limpiar($_POST['servicio'] ?? '');
$mensaje  = limpiar($_POST['mensaje']  ?? '');

// Validaciones básicas
if (empty($nombre) || empty($telefono) || empty($email)) {
    http_response_code(400);
    echo json_encode(['success' => false, 'error' => 'Campos obligatorios incompletos']);
    exit;
}

// Validar email
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    http_response_code(400);
    echo json_encode(['success' => false, 'error' => 'Email inválido']);
    exit;
}

// Protección básica contra spam (header injection)
$campos = [$nombre, $telefono, $email, $servicio, $mensaje];
foreach ($campos as $campo) {
    if (preg_match('/\r|\n|%0a|%0d|content-type:|bcc:|cc:|to:/i', $campo)) {
        http_response_code(400);
        echo json_encode(['success' => false, 'error' => 'Datos inválidos']);
        exit;
    }
}

// Etiquetas de servicio
$servicios_labels = [
    'estadia_permanente' => 'Estadía permanente',
    'estadia_temporal'   => 'Estadía temporal',
    'club_dia'           => 'Club Día',
    'visita'             => 'Visita a las instalaciones',
    'informacion'        => 'Información general',
    ''                   => 'No especificado',
];
$servicio_label = $servicios_labels[$servicio] ?? 'No especificado';

// Fecha y hora
$fecha_hora = date('d/m/Y H:i:s');

// ---- Cuerpo del correo (HTML) ----
$cuerpo_html = '<!DOCTYPE html>
<html lang="es">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"></head>
<body style="margin:0;padding:0;font-family:Georgia,serif;background:#f5f4f4;">
<table width="100%" cellpadding="0" cellspacing="0" style="background:#f5f4f4;padding:30px 0;">
  <tr><td align="center">
    <table width="600" cellpadding="0" cellspacing="0" style="background:#ffffff;border-radius:12px;overflow:hidden;max-width:600px;width:100%;">
      <!-- Header -->
      <tr>
        <td style="background:#3b4843;padding:28px 36px;text-align:center;">
          <p style="margin:0;font-family:Georgia,serif;font-size:26px;font-weight:400;color:#f5f4f4;letter-spacing:1px;">Club Dorado Senior</p>
          <p style="margin:6px 0 0;font-family:Arial,sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#c89d65;">Nuevo mensaje de contacto</p>
        </td>
      </tr>
      <!-- Divider -->
      <tr><td style="height:4px;background:#c89d65;"></td></tr>
      <!-- Body -->
      <tr>
        <td style="padding:36px 36px 24px;">
          <p style="margin:0 0 24px;font-family:Arial,sans-serif;font-size:14px;color:#5a5a5a;">Has recibido un nuevo mensaje a través del formulario de contacto del sitio web.</p>
          <!-- Datos -->
          <table width="100%" cellpadding="0" cellspacing="0">
            <tr>
              <td style="padding:12px 0;border-bottom:1px solid #e8e6e1;">
                <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#76886f;">Nombre</p>
                <p style="margin:4px 0 0;font-family:Georgia,serif;font-size:16px;color:#2a2a2a;">'.htmlspecialchars($nombre).'</p>
              </td>
            </tr>
            <tr>
              <td style="padding:12px 0;border-bottom:1px solid #e8e6e1;">
                <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#76886f;">Teléfono / WhatsApp</p>
                <p style="margin:4px 0 0;font-family:Georgia,serif;font-size:16px;color:#2a2a2a;">'.htmlspecialchars($telefono).'</p>
              </td>
            </tr>
            <tr>
              <td style="padding:12px 0;border-bottom:1px solid #e8e6e1;">
                <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#76886f;">Correo electrónico</p>
                <p style="margin:4px 0 0;font-family:Georgia,serif;font-size:16px;color:#2a2a2a;"><a href="mailto:'.htmlspecialchars($email).'" style="color:#c89d65;">'.htmlspecialchars($email).'</a></p>
              </td>
            </tr>
            <tr>
              <td style="padding:12px 0;border-bottom:1px solid #e8e6e1;">
                <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#76886f;">Servicio de interés</p>
                <p style="margin:4px 0 0;font-family:Georgia,serif;font-size:16px;color:#2a2a2a;">'.htmlspecialchars($servicio_label).'</p>
              </td>
            </tr>
            '.(!empty($mensaje) ? '
            <tr>
              <td style="padding:12px 0;">
                <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#76886f;">Mensaje</p>
                <p style="margin:8px 0 0;font-family:Arial,sans-serif;font-size:14px;color:#5a5a5a;line-height:1.7;background:#f5f4f4;padding:16px;border-radius:8px;border-left:3px solid #c89d65;">'.nl2br(htmlspecialchars($mensaje)).'</p>
              </td>
            </tr>' : '').'
          </table>
          <!-- CTA -->
          <table width="100%" cellpadding="0" cellspacing="0" style="margin-top:28px;">
            <tr>
              <td align="center">
                <a href="https://wa.me/573134067249?text=Hola+'.urlencode($nombre).'%2C+gracias+por+contactarnos." style="display:inline-block;background:#3b4843;color:#f5f4f4;padding:12px 28px;border-radius:50px;font-family:Arial,sans-serif;font-size:13px;font-weight:700;text-decoration:none;letter-spacing:1px;">Responder por WhatsApp</a>
              </td>
            </tr>
          </table>
        </td>
      </tr>
      <!-- Footer -->
      <tr>
        <td style="background:#f5f4f4;padding:20px 36px;text-align:center;border-top:1px solid #e8e6e1;">
          <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;color:#888880;">Mensaje recibido el '.$fecha_hora.' · Club Dorado Senior · Cumaral, Meta</p>
        </td>
      </tr>
    </table>
  </td></tr>
</table>
</body></html>';

// ---- Cuerpo del correo (texto plano - fallback) ----
$cuerpo_texto = "NUEVO MENSAJE DE CONTACTO - CLUB DORADO SENIOR\n";
$cuerpo_texto .= str_repeat('=', 50) . "\n\n";
$cuerpo_texto .= "Nombre:    $nombre\n";
$cuerpo_texto .= "Teléfono:  $telefono\n";
$cuerpo_texto .= "Email:     $email\n";
$cuerpo_texto .= "Servicio:  $servicio_label\n";
if (!empty($mensaje)) {
    $cuerpo_texto .= "Mensaje:\n$mensaje\n";
}
$cuerpo_texto .= "\n" . str_repeat('-', 50) . "\n";
$cuerpo_texto .= "Recibido: $fecha_hora\n";
$cuerpo_texto .= "Sitio:    Club Dorado Senior\n";

// ---- Headers del correo ----
$boundary = md5(uniqid(time()));
$asunto   = ASUNTO_PREFIX . ' - ' . $nombre;

$headers  = 'From: ' . REMITENTE_NOMBRE . ' <' . REMITENTE_EMAIL . '>' . "\r\n";
$headers .= 'Reply-To: ' . $nombre . ' <' . $email . '>' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-Type: multipart/alternative; boundary="' . $boundary . '"' . "\r\n";
$headers .= 'X-Mailer: PHP/' . phpversion() . "\r\n";

// Construir mensaje multipart
$body  = "--$boundary\r\n";
$body .= "Content-Type: text/plain; charset=utf-8\r\n";
$body .= "Content-Transfer-Encoding: base64\r\n\r\n";
$body .= chunk_split(base64_encode($cuerpo_texto)) . "\r\n";
$body .= "--$boundary\r\n";
$body .= "Content-Type: text/html; charset=utf-8\r\n";
$body .= "Content-Transfer-Encoding: base64\r\n\r\n";
$body .= chunk_split(base64_encode($cuerpo_html)) . "\r\n";
$body .= "--$boundary--\r\n";

// Enviar correo
$enviado = mail(DESTINATARIO, $asunto, $body, $headers);

if ($enviado) {
    // Correo de confirmación al usuario
    $asunto_confirmacion  = 'Gracias por contactarnos, ' . $nombre . ' · Club Dorado Senior';
    $confirmacion_html    = '<!DOCTYPE html>
<html lang="es"><head><meta charset="UTF-8"></head>
<body style="margin:0;padding:0;font-family:Georgia,serif;background:#f5f4f4;">
<table width="100%" cellpadding="0" cellspacing="0" style="background:#f5f4f4;padding:30px 0;">
  <tr><td align="center">
    <table width="600" cellpadding="0" cellspacing="0" style="background:#ffffff;border-radius:12px;overflow:hidden;max-width:600px;width:100%;">
      <tr><td style="background:#3b4843;padding:28px 36px;text-align:center;">
        <p style="margin:0;font-family:Georgia,serif;font-size:26px;font-weight:400;color:#f5f4f4;">Club Dorado Senior</p>
        <p style="margin:6px 0 0;font-family:Arial,sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#c89d65;">Cuidado · Acompañamiento · Dignidad</p>
      </td></tr>
      <tr><td style="height:4px;background:#c89d65;"></td></tr>
      <tr><td style="padding:40px 36px;">
        <p style="margin:0 0 16px;font-family:Georgia,serif;font-size:22px;color:#3b4843;">Hola, '.htmlspecialchars($nombre).'</p>
        <p style="margin:0 0 16px;font-family:Arial,sans-serif;font-size:14px;color:#5a5a5a;line-height:1.8;">Hemos recibido tu mensaje y nos pondremos en contacto contigo a la brevedad posible. En Club Dorado Senior, cada consulta es importante para nosotros.</p>
        <p style="margin:0 0 28px;font-family:Arial,sans-serif;font-size:14px;color:#5a5a5a;line-height:1.8;">Si deseas una respuesta más rápida, puedes escribirnos directamente por WhatsApp.</p>
        <table width="100%" cellpadding="0" cellspacing="0">
          <tr><td align="center">
            <a href="https://wa.me/573134067249" style="display:inline-block;background:#c89d65;color:#ffffff;padding:13px 30px;border-radius:50px;font-family:Arial,sans-serif;font-size:13px;font-weight:700;text-decoration:none;">Escribir por WhatsApp</a>
          </td></tr>
        </table>
        <p style="margin:28px 0 0;font-family:Georgia,serif;font-size:14px;font-style:italic;color:#76886f;text-align:center;">"No importa la etapa, siempre hay espacio para crecer cuando se está acompañado."</p>
      </td></tr>
      <tr><td style="background:#f5f4f4;padding:20px 36px;text-align:center;border-top:1px solid #e8e6e1;">
        <p style="margin:0;font-family:Arial,sans-serif;font-size:11px;color:#888880;">Club Dorado Senior · Cumaral, Meta · +57 313 406 72 49</p>
      </td></tr>
    </table>
  </td></tr>
</table>
</body></html>';

    $boundary_c = md5(uniqid('c' . time()));
    $headers_c  = 'From: ' . REMITENTE_NOMBRE . ' <' . REMITENTE_EMAIL . '>' . "\r\n";
    $headers_c .= 'MIME-Version: 1.0' . "\r\n";
    $headers_c .= 'Content-Type: multipart/alternative; boundary="' . $boundary_c . '"' . "\r\n";

    $body_c  = "--$boundary_c\r\n";
    $body_c .= "Content-Type: text/plain; charset=utf-8\r\n";
    $body_c .= "Content-Transfer-Encoding: base64\r\n\r\n";
    $body_c .= chunk_split(base64_encode("Hola $nombre,\n\nHemos recibido tu mensaje. Te contactaremos pronto.\n\nClub Dorado Senior\n+57 313 406 72 49")) . "\r\n";
    $body_c .= "--$boundary_c\r\n";
    $body_c .= "Content-Type: text/html; charset=utf-8\r\n";
    $body_c .= "Content-Transfer-Encoding: base64\r\n\r\n";
    $body_c .= chunk_split(base64_encode($confirmacion_html)) . "\r\n";
    $body_c .= "--$boundary_c--\r\n";

    @mail($email, $asunto_confirmacion, $body_c, $headers_c);

    echo json_encode(['success' => true, 'message' => 'Mensaje enviado correctamente']);
} else {
    http_response_code(500);
    echo json_encode(['success' => false, 'error' => 'Error al enviar el correo. Intenta por WhatsApp.']);
}
