8
This commit is contained in:
@@ -259,9 +259,11 @@ class Paciente {
|
||||
if (str_starts_with($tel, '+')) {
|
||||
$tel = ltrim($tel, '+');
|
||||
}
|
||||
// Sin prefijo (10 dígitos empezando por 3) → asume Colombia 57
|
||||
if (strlen($tel) === 10 && str_starts_with($tel, '3')) {
|
||||
$tel = '57' . $tel;
|
||||
}
|
||||
// Si ya trae prefijo de 2 dígitos (57xx... o 58xx...) lo respetamos
|
||||
return $tel;
|
||||
}
|
||||
}
|
||||
|
||||
+20
-5
@@ -1236,8 +1236,14 @@ const formVer = {
|
||||
<div class="row g-2 mb-2">
|
||||
<div class="col-6">
|
||||
<label class="form-label small mb-1">Teléfono</label>
|
||||
<input type="tel" id="na-np-telefono" class="form-control form-control-sm"
|
||||
placeholder="3001234567">
|
||||
<div class="input-group input-group-sm">
|
||||
<select id="na-np-prefijo" class="form-select form-select-sm" style="max-width:72px">
|
||||
<option value="57" selected>+57</option>
|
||||
<option value="58">+58</option>
|
||||
</select>
|
||||
<input type="tel" id="na-np-telefono" class="form-control form-control-sm"
|
||||
placeholder="3001234567">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<label class="form-label small mb-1">Fecha nacimiento</label>
|
||||
@@ -1426,10 +1432,18 @@ const formVer = {
|
||||
* - +57XXXXXXXXXX → quita el +
|
||||
* - Cualquier otro valor → solo dígitos
|
||||
*/
|
||||
function normalizarTelefono(val) {
|
||||
function normalizarTelefono(val, prefijo) {
|
||||
let t = (val || '').replace(/[^0-9+]/g, '');
|
||||
if (t.startsWith('+')) t = t.slice(1);
|
||||
if (t.length === 10 && t.startsWith('3')) t = '57' + t;
|
||||
// Si ya trae el prefijo completo (ej: 573001234567) lo dejamos
|
||||
const pre = prefijo || '57';
|
||||
if (!t.startsWith(pre)) {
|
||||
// quitar cualquier otro prefijo de 2 dígitos que no sea el seleccionado
|
||||
if (t.length >= 12 && !t.startsWith('3')) {
|
||||
t = t.slice(2);
|
||||
}
|
||||
if (t.length === 10) t = pre + t;
|
||||
}
|
||||
return t || null;
|
||||
}
|
||||
|
||||
@@ -1480,6 +1494,7 @@ const agendaNueva = {
|
||||
document.getElementById('na-nuevo-pac-panel').classList.add('d-none');
|
||||
document.getElementById('na-np-nombre').value = '';
|
||||
document.getElementById('na-np-telefono').value = '';
|
||||
document.getElementById('na-np-prefijo').value = '57';
|
||||
document.getElementById('na-np-fnac').value = '';
|
||||
document.getElementById('na-np-email').value = '';
|
||||
document.getElementById('na-crear-toggle-txt').textContent = 'Crear nuevo paciente';
|
||||
@@ -1681,7 +1696,7 @@ const agendaNueva = {
|
||||
tipo_documento: document.getElementById('na-np-tipo-doc').value,
|
||||
numero_documento: documento,
|
||||
eps: document.getElementById('na-np-eps').value.trim() || null,
|
||||
telefono: normalizarTelefono(document.getElementById('na-np-telefono').value),
|
||||
telefono: normalizarTelefono(document.getElementById('na-np-telefono').value, document.getElementById('na-np-prefijo').value),
|
||||
fecha_nacimiento: document.getElementById('na-np-fnac').value || null,
|
||||
email: document.getElementById('na-np-email').value.trim() || null,
|
||||
}),
|
||||
|
||||
Reference in New Issue
Block a user