up
This commit is contained in:
+58
-1
@@ -561,8 +561,16 @@ if (empty($user_id)) {
|
||||
const displayName = currentUser.name || 'Usuario';
|
||||
const phoneNumber = currentUser.phone_number || '';
|
||||
document.getElementById('userName').innerHTML = `
|
||||
${escapeHtml(displayName)}
|
||||
<span id="userNameText">${escapeHtml(displayName)}</span>
|
||||
<button id="editNameBtn" class="btn btn-sm btn-light ms-2" onclick="editUserName()" title="Editar nombre">
|
||||
<i class="fas fa-edit"></i>
|
||||
</button>
|
||||
${phoneNumber ? `<br><small class="opacity-75">${escapeHtml(phoneNumber)}</small>` : ''}
|
||||
<div id="editNameContainer" style="display:none; margin-top:6px;">
|
||||
<input id="editNameInput" class="form-control form-control-sm" type="text" value="${escapeHtml(displayName)}" style="display:inline-block; width:70%;">
|
||||
<button id="saveNameBtn" class="btn btn-sm btn-success ms-2" onclick="saveUserName()">Guardar</button>
|
||||
<button id="cancelNameBtn" class="btn btn-sm btn-secondary ms-1" onclick="cancelEditUserName()">Cancelar</button>
|
||||
</div>
|
||||
`;
|
||||
document.getElementById('userAvatar').innerHTML =
|
||||
`<span>${(currentUser.name || 'U').charAt(0).toUpperCase()}</span>`;
|
||||
@@ -1112,6 +1120,55 @@ if (empty($user_id)) {
|
||||
showAlert('Error al cambiar estado de atención: ' + err.message, 'danger');
|
||||
}
|
||||
}
|
||||
|
||||
// ===== Edición de nombre de usuario =====
|
||||
function editUserName() {
|
||||
const container = document.getElementById('editNameContainer');
|
||||
const input = document.getElementById('editNameInput');
|
||||
if (!container || !input) return;
|
||||
input.value = currentUser.name || '';
|
||||
container.style.display = 'block';
|
||||
document.getElementById('editNameBtn').style.display = 'none';
|
||||
input.focus();
|
||||
}
|
||||
|
||||
function cancelEditUserName() {
|
||||
const container = document.getElementById('editNameContainer');
|
||||
if (!container) return;
|
||||
container.style.display = 'none';
|
||||
document.getElementById('editNameBtn').style.display = 'inline-block';
|
||||
}
|
||||
|
||||
async function saveUserName() {
|
||||
const input = document.getElementById('editNameInput');
|
||||
const saveBtn = document.getElementById('saveNameBtn');
|
||||
if (!input || !saveBtn) return;
|
||||
|
||||
const newName = input.value.trim();
|
||||
if (newName.length === 0) {
|
||||
showAlert('El nombre no puede estar vacío', 'warning');
|
||||
return;
|
||||
}
|
||||
|
||||
saveBtn.disabled = true;
|
||||
try {
|
||||
const resp = await whatsappManager.apiCall('update_user.php', { body: { user_id: userId, name: newName } });
|
||||
if (resp && resp.success) {
|
||||
currentUser.name = newName;
|
||||
document.getElementById('userNameText').innerHTML = escapeHtml(newName);
|
||||
document.getElementById('userAvatar').innerHTML = `<span>${escapeHtml(newName.charAt(0).toUpperCase() || 'U')}</span>`;
|
||||
cancelEditUserName();
|
||||
showAlert('Nombre actualizado', 'success');
|
||||
} else {
|
||||
throw new Error(resp.error || 'Error actualizando nombre');
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('Error saving user name:', err);
|
||||
showAlert('Error al actualizar nombre: ' + err.message, 'danger');
|
||||
} finally {
|
||||
saveBtn.disabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
function showError(message) {
|
||||
showAlert(message, 'danger');
|
||||
|
||||
Reference in New Issue
Block a user