mejoras
This commit is contained in:
+21
-21
@@ -156,7 +156,7 @@
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.chat-messages {
|
||||
.chat-conversations {
|
||||
flex: 1;
|
||||
overflow-y: auto;
|
||||
padding: 20px;
|
||||
@@ -485,7 +485,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="chat-messages" id="chat-messages">
|
||||
<div class="chat-conversations" id="chat-conversations">
|
||||
<!-- Los mensajes se cargan aquí -->
|
||||
</div>
|
||||
|
||||
@@ -530,7 +530,7 @@
|
||||
this.currentConversationId = null;
|
||||
this.currentUserId = null;
|
||||
this.conversations = [];
|
||||
this.messages = [];
|
||||
this.conversations = [];
|
||||
|
||||
this.init();
|
||||
}
|
||||
@@ -671,7 +671,7 @@
|
||||
// Actualizar mensajes del chat activo cada 10 segundos
|
||||
setInterval(() => {
|
||||
if (this.currentUserId) {
|
||||
this.loadMessages(this.currentUserId, false);
|
||||
this.loadconversations(this.currentUserId, false);
|
||||
}
|
||||
}, 10000);
|
||||
}
|
||||
@@ -891,14 +891,14 @@
|
||||
}
|
||||
|
||||
// Cargar mensajes
|
||||
await this.loadMessages(userId);
|
||||
await this.loadconversations(userId);
|
||||
// Cargar respuestas rápidas
|
||||
await this.loadQuickReplies();
|
||||
}
|
||||
|
||||
async loadMessages(userId, showLoading = true) {
|
||||
async loadconversations(userId, showLoading = true) {
|
||||
if (showLoading) {
|
||||
document.getElementById('chat-messages').innerHTML = `
|
||||
document.getElementById('chat-conversations').innerHTML = `
|
||||
<div class="loading">
|
||||
<i class="fas fa-spinner fa-spin"></i> Cargando mensajes...
|
||||
</div>
|
||||
@@ -906,12 +906,12 @@
|
||||
}
|
||||
|
||||
try {
|
||||
const response = await fetch(`api/get_user_messages.php?user_id=${userId}`);
|
||||
const response = await fetch(`api/get_user_conversations.php?user_id=${userId}`);
|
||||
const data = await response.json();
|
||||
|
||||
if (Array.isArray(data)) {
|
||||
this.messages = data;
|
||||
this.renderMessages();
|
||||
this.conversations = data;
|
||||
this.renderconversations();
|
||||
this.scrollToBottom();
|
||||
|
||||
// Marcar como leídos en el backend
|
||||
@@ -928,8 +928,8 @@
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Error loading messages:', error);
|
||||
document.getElementById('chat-messages').innerHTML = `
|
||||
console.error('Error loading conversations:', error);
|
||||
document.getElementById('chat-conversations').innerHTML = `
|
||||
<div class="text-center p-4">
|
||||
<i class="fas fa-exclamation-triangle text-warning"></i>
|
||||
<p>Error al cargar los mensajes</p>
|
||||
@@ -938,10 +938,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
renderMessages() {
|
||||
const container = document.getElementById('chat-messages');
|
||||
renderconversations() {
|
||||
const container = document.getElementById('chat-conversations');
|
||||
|
||||
if (this.messages.length === 0) {
|
||||
if (this.conversations.length === 0) {
|
||||
container.innerHTML = `
|
||||
<div class="text-center p-4">
|
||||
<i class="far fa-comment fa-3x text-muted mb-3"></i>
|
||||
@@ -951,7 +951,7 @@
|
||||
return;
|
||||
}
|
||||
|
||||
const html = this.messages.map(msg => {
|
||||
const html = this.conversations.map(msg => {
|
||||
const time = new Date(msg.created_at).toLocaleTimeString('es-ES', {
|
||||
hour: '2-digit',
|
||||
minute: '2-digit'
|
||||
@@ -967,7 +967,7 @@
|
||||
// Mostrar preview si es reply/context
|
||||
let replyHtml = '';
|
||||
if (msg.reply_to_message_id) {
|
||||
const target = this.messages.find(m => m.message_id == msg.reply_to_message_id);
|
||||
const target = this.conversations.find(m => m.message_id == msg.reply_to_message_id);
|
||||
const previewText = target ? (target.content || target.message_text || '').substring(0,140) : ('Mensaje ' + msg.reply_to_message_id);
|
||||
replyHtml = `<div class="reply-preview">En respuesta a: ${previewText}</div>`;
|
||||
}
|
||||
@@ -1043,7 +1043,7 @@
|
||||
});
|
||||
const result = await resp.json();
|
||||
if (result.success) {
|
||||
await this.loadMessages(this.currentUserId, false);
|
||||
await this.loadconversations(this.currentUserId, false);
|
||||
await this.loadConversations();
|
||||
} else {
|
||||
alert('Error al enviar plantilla: ' + (result.error || JSON.stringify(result)));
|
||||
@@ -1055,7 +1055,7 @@
|
||||
}
|
||||
|
||||
scrollToBottom() {
|
||||
const container = document.getElementById('chat-messages');
|
||||
const container = document.getElementById('chat-conversations');
|
||||
container.scrollTop = container.scrollHeight;
|
||||
}
|
||||
|
||||
@@ -1090,7 +1090,7 @@
|
||||
if (result.success) {
|
||||
input.value = '';
|
||||
// Recargar mensajes
|
||||
await this.loadMessages(this.currentUserId, false);
|
||||
await this.loadconversations(this.currentUserId, false);
|
||||
// Actualizar lista de conversaciones
|
||||
this.loadConversations();
|
||||
// Actualizar respuestas rápidas
|
||||
@@ -1314,7 +1314,7 @@
|
||||
|
||||
// Éxito
|
||||
this.cancelMediaUpload();
|
||||
await this.loadMessages(this.currentUserId, false);
|
||||
await this.loadconversations(this.currentUserId, false);
|
||||
this.loadConversations();
|
||||
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user