import { Resend } from 'resend'
import { format, parseISO } from 'date-fns'
import { es } from 'date-fns/locale'

const resend = new Resend(process.env.RESEND_API_KEY)
const FROM = process.env.RESEND_FROM_EMAIL!

export async function enviarConfirmacionCita(params: {
  emailCliente: string
  nombreCliente: string
  nombreBarbero: string
  servicio: string
  fechaInicio: string
  fechaFin: string
  citaId: string
}) {
  const fecha = format(parseISO(params.fechaInicio), "EEEE d 'de' MMMM yyyy", { locale: es })
  const horaInicio = format(parseISO(params.fechaInicio), 'HH:mm', { locale: es })
  const horaFin = format(parseISO(params.fechaFin), 'HH:mm', { locale: es })

  await resend.emails.send({
    from: FROM,
    to: params.emailCliente,
    subject: '✅ Cita confirmada — Barbería Lukakin',
    html: `
      <div style="font-family:sans-serif;max-width:500px;margin:0 auto;">
        <h2 style="color:#1a1a1a;">¡Tu cita está confirmada!</h2>
        <p>Hola <strong>${params.nombreCliente}</strong>, tu cita ha sido agendada exitosamente.</p>

        <div style="background:#f5f5f5;border-radius:8px;padding:20px;margin:20px 0;">
          <p><strong>📅 Fecha:</strong> ${fecha}</p>
          <p><strong>🕐 Hora:</strong> ${horaInicio} – ${horaFin}</p>
          <p><strong>✂️ Servicio:</strong> ${params.servicio}</p>
          <p><strong>💈 Barbero:</strong> ${params.nombreBarbero}</p>
        </div>

        <p style="color:#666;font-size:14px;">
          Si necesitas cancelar o reagendar, ingresa a tu cuenta en nuestra plataforma.
        </p>

        <p style="color:#999;font-size:12px;">Barbería Lukakin — Gracias por tu preferencia.</p>
      </div>
    `,
  })
}

export async function enviarRecordatorioCita(params: {
  emailCliente: string
  nombreCliente: string
  nombreBarbero: string
  servicio: string
  fechaInicio: string
}) {
  const horaInicio = format(parseISO(params.fechaInicio), 'HH:mm', { locale: es })
  const fecha = format(parseISO(params.fechaInicio), "EEEE d 'de' MMMM", { locale: es })

  await resend.emails.send({
    from: FROM,
    to: params.emailCliente,
    subject: '🔔 Recordatorio: tu cita es mañana — Barbería Lukakin',
    html: `
      <div style="font-family:sans-serif;max-width:500px;margin:0 auto;">
        <h2 style="color:#1a1a1a;">Recordatorio de cita</h2>
        <p>Hola <strong>${params.nombreCliente}</strong>, te recordamos que mañana tienes cita.</p>

        <div style="background:#f5f5f5;border-radius:8px;padding:20px;margin:20px 0;">
          <p><strong>📅 Fecha:</strong> ${fecha}</p>
          <p><strong>🕐 Hora:</strong> ${horaInicio}</p>
          <p><strong>✂️ Servicio:</strong> ${params.servicio}</p>
          <p><strong>💈 Barbero:</strong> ${params.nombreBarbero}</p>
        </div>

        <p style="color:#999;font-size:12px;">Barbería Lukakin — ¡Te esperamos!</p>
      </div>
    `,
  })
}
