diff --git a/asignados.html b/asignados.html
index 3a25fd4..7da820f 100644
--- a/asignados.html
+++ b/asignados.html
@@ -477,7 +477,7 @@
return diffDays;
}
- function renderServices() {
+function renderServices() {
const container = document.getElementById('servicesList');
const noDateSec = document.getElementById('noDateSection');
@@ -509,7 +509,7 @@
// 馃敟 A脩ADIDO: Extraer y limpiar la descripci贸n de aver铆a
let desc = raw["Descripci贸n"] || raw["DESCRIPCION"] || raw["Averia"] || "Sin descripci贸n de aver铆a en el expediente.";
- // Quitar posibles saltos de l铆nea molestos y limitarlo a ~100 caracteres visuales
+ // Quitar posibles saltos de l铆nea molestos y limitarlo visualmente
desc = desc.replace(/(\r\n|\n|\r)/gm, " ");
const calledTimes = parseInt(raw.called_times || 0);
@@ -557,23 +557,27 @@
lucide.createIcons();
}
- // 馃敟 MEJORA: El "Mata-Fantasmas" por si se intenta abrir un aviso que ya no est谩 en BD
+ // 馃敟 MEJORA MATA-FANTASMAS
async function openActionModal(id) {
let s = localServices.find(x => x.id === id);
+ // Si el operario hace click en algo que justo acaba de desaparecer de la BD...
if (!s) {
try {
- showToast("Cargando datos...");
+ showToast("Sincronizando...");
const res = await fetch(`${API_URL}/services/active`, { headers: { "Authorization": `Bearer ${localStorage.getItem("token")}` } });
const data = await res.json();
- s = data.services.find(x => x.id === id);
- if (s) localServices.push(s);
+ if (data.ok) {
+ s = data.services.find(x => x.id === id);
+ if (s) localServices.push(s);
+ }
} catch(e) {}
}
+ // Si definitivamente el aviso fue borrado/reasignado por la oficina
if (!s) {
- showToast("El aviso ya no est谩 disponible", true);
- refreshData();
+ showToast("Este aviso ya no est谩 en tu bandeja", true);
+ refreshData(); // Limpiamos la pantalla para que desaparezca visualmente
return;
}
@@ -585,7 +589,7 @@
document.getElementById('detAddress').innerText = `${raw["Direcci贸n"] || ""}, ${raw["Poblaci贸n"] || ""}`;
const rawPhone = raw["Tel茅fono"] || raw["TELEFONOS"] || raw["TELEFONO"] || "";
- const matchPhone = rawPhone.toString().match(/[6789]\d{8}/);
+ const matchPhone = String(rawPhone).match(/[6789]\d{8}/);
document.getElementById('detPhoneRaw').value = matchPhone ? matchPhone[0] : "";
document.getElementById('durationInput').value = "60";