feat: auto-rellenar variable {{name}} con nombre del paciente en nuevo mensaje
Al seleccionar un paciente de la lista, si la plantilla tiene una variable llamada 'name', se pre-rellena automáticamente con su nombre. Si se ingresa un número directo, el campo queda vacío para llenarlo manualmente. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
e88fb4cc86
commit
53dc492b5e
@@ -1038,6 +1038,7 @@ function cancelRecording() {
|
||||
const nuevoMensaje = (() => {
|
||||
let _phone = '';
|
||||
let _destLabel = '';
|
||||
let _patientName = '';
|
||||
let _tpl = null;
|
||||
let _buscarTimer = null;
|
||||
|
||||
@@ -1048,7 +1049,7 @@ const nuevoMensaje = (() => {
|
||||
}
|
||||
|
||||
function abrir() {
|
||||
_phone = ''; _destLabel = ''; _tpl = null;
|
||||
_phone = ''; _destLabel = ''; _patientName = ''; _tpl = null;
|
||||
document.getElementById('nv-pac-search').value = '';
|
||||
document.getElementById('nv-phone-input').value = '';
|
||||
document.getElementById('nv-phone-hint').textContent = '';
|
||||
@@ -1082,6 +1083,7 @@ const nuevoMensaje = (() => {
|
||||
_setDest('', '');
|
||||
}
|
||||
// Clear patient selection if typing a phone
|
||||
_patientName = '';
|
||||
document.getElementById('nv-pac-search').value = '';
|
||||
document.getElementById('nv-pac-results').innerHTML = '';
|
||||
}
|
||||
@@ -1113,6 +1115,7 @@ const nuevoMensaje = (() => {
|
||||
div.onclick = () => {
|
||||
const phone = (p.telefono || '').replace(/\D/g,'');
|
||||
if (!phone) { alert('Este paciente no tiene teléfono registrado.'); return; }
|
||||
_patientName = p.nombre_completo;
|
||||
_setDest(phone, p.nombre_completo + ' · ' + tel);
|
||||
document.getElementById('nv-pac-search').value = p.nombre_completo;
|
||||
el.innerHTML = '';
|
||||
@@ -1177,8 +1180,10 @@ const nuevoMensaje = (() => {
|
||||
const row = document.createElement('div');
|
||||
row.className = 'tpl-var-row';
|
||||
const ph = v.example || v.placeholder || v.label;
|
||||
const varName = (v.placeholder || '').replace(/\{\{|\}\}/g, '').trim();
|
||||
const autoVal = (varName === 'name' && _patientName) ? _patientName : '';
|
||||
row.innerHTML = `<label>{{${v.index}}} — ${escHtml(v.label)}</label>` +
|
||||
`<input type="text" data-var-index="${v.index}" data-var-placeholder="${escHtml(v.placeholder || '')}" placeholder="${escHtml(ph)}">`;
|
||||
`<input type="text" data-var-index="${v.index}" data-var-placeholder="${escHtml(v.placeholder || '')}" placeholder="${escHtml(ph)}" value="${escHtml(autoVal)}">`;
|
||||
varsBody.appendChild(row);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user