fix: ruta doble en local_file al mostrar imagen de orden médica

La BD guarda local_file con 'uploads/media/...' incluido.
El código le añadía otro 'uploads/media/' dando ruta doble.

- lab_ordenes.php: helper _resolveImg() detecta si el path
  ya empieza con 'uploads/' y no añade el prefijo de nuevo
- enfermero_portal.php: nueva función resImg() con misma lógica,
  usada en _cardHTML() al renderizar la imagen de la orden
This commit is contained in:
Lizandro Guarnizo
2026-03-12 22:23:15 -05:00
parent d362598a70
commit 8956de8eaa
2 changed files with 19 additions and 5 deletions
+10 -2
View File
@@ -415,9 +415,9 @@ const portal = {
<!-- Orden médica (imagen) -->
${item.orden_local_file ? `
<div class="mt-2 mb-2">
<a href="uploads/media/${esc(item.orden_local_file)}" target="_blank"
<a href="${resImg(item.orden_local_file)}" target="_blank"
title="Ver orden médica">
<img src="uploads/media/${esc(item.orden_local_file)}"
<img src="${resImg(item.orden_local_file)}"
style="max-width:100%;max-height:180px;border-radius:8px;border:1px solid #ddd;cursor:zoom-in"
alt="Orden médica #${item.orden_id}">
</a>
@@ -563,6 +563,14 @@ function esc(s) {
({ '<':'&lt;','>':'&gt;','&':'&amp;','"':'&quot;',"'":'&#39;' }[c]));
}
// Resolver ruta de imagen: evita duplicar "uploads/media/"
function resImg(f) {
if (!f) return '';
if (/^https?:\/\//i.test(f)) return esc(f);
if (String(f).startsWith('uploads/')) return esc(f);
return `uploads/media/${esc(f)}`;
}
document.addEventListener('DOMContentLoaded', () => {
portal.init();
agendaNueva.init();