From 75aac68d65fc79955a5bf07eb6717980c607f3ea Mon Sep 17 00:00:00 2001 From: Lizandro Guarnizo <77708265+lizandrogd@users.noreply.github.com> Date: Wed, 25 Mar 2026 11:18:48 -0500 Subject: [PATCH] =?UTF-8?q?fix:=20im=C3=A1genes=20de=20=C3=B3rdenes=20en?= =?UTF-8?q?=20lab=5Fdomicilios=20=E2=80=94=20corregir=20URL=20(encodeURICo?= =?UTF-8?q?mponent=20romp=C3=ADa=20subdirectorios),=20agregar=20modal=20vi?= =?UTF-8?q?sor=20y=20botones=20Ver/Descargar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lab_domicilios.php | 74 +++++++++++++++++++++++++++++++++++++--------- 1 file changed, 60 insertions(+), 14 deletions(-) diff --git a/lab_domicilios.php b/lab_domicilios.php index 9f18f51..64c97b5 100644 --- a/lab_domicilios.php +++ b/lab_domicilios.php @@ -975,10 +975,22 @@ const esc = s => String(s||'').replace(/[<>&"]/g, c => ({'<':'<','>':'>',' /** * Renderiza el bloque de órdenes médicas (multi-archivo) en el detalle de domicilio. */ +/** + * Resuelve la URL directa para mostrar un archivo de orden médica. + * Equivalente al _resolveImg de lab_ordenes.php — NO usa encodeURIComponent + * para no romper las / del subdirectorio (ej. 2026/02/archivo.jpg). + */ +function _resolveOrdenUrl(f) { + if (!f) return ''; + if (/^https?:\/\//i.test(f)) return f; + if (f.startsWith('uploads/')) return f; + return `uploads/media/${f}`; +} + function renderOrdenesDetail(dom) { const archivos = dom.archivos_ordenes || []; if (!archivos.length && !dom.orden_id) return ''; - // Si no hay archivos cargados pero sí hay orden_id, mostramos solo el link + // Sin archivos adjuntos pero sí orden_id — solo link a la ficha if (!archivos.length) { return `