<?php
/**
 * GET ?q= — Busca pacientes en lab_pacientes por nombre o documento.
 * Usado por el modal "Nuevo mensaje" del chat turnero.
 */
require_once __DIR__ . '/../../../config/config.php';
requireAuthentication();
header('Content-Type: application/json; charset=utf-8');

$q = trim($_GET['q'] ?? '');
if (strlen($q) < 2) { echo json_encode(['ok' => true, 'data' => []]); exit; }

try {
    $pdo  = Database::getInstance()->getConnection();
    $like = '%' . $q . '%';
    $rows = $pdo->prepare(
        "SELECT id, nombre_completo, telefono, numero_documento
           FROM lab_pacientes
          WHERE is_active = 1
            AND (nombre_completo LIKE ? OR numero_documento LIKE ? OR telefono LIKE ?)
          ORDER BY nombre_completo ASC
          LIMIT 20"
    );
    $rows->execute([$like, $like, $like]);
    echo json_encode(['ok' => true, 'data' => $rows->fetchAll(PDO::FETCH_ASSOC)]);
} catch (Throwable $e) {
    http_response_code(500);
    echo json_encode(['ok' => false, 'error' => $e->getMessage()]);
}
