Bienvenidos al chat de GAYPERU.COM
[rumbletalk-chat hash=”Er5*j@iD”]
// -----------------------------------------------------------------------------// Código JavaScript para integrar usuario de WordPress con chat de Supabase
// Colocar este código en el footer de WordPress antes del chat(function() {
// 1. Función para obtener datos del usuario de WordPress
function getWordPressUserData() {
// WordPress debe proporcionar estos datos vía PHP
if (typeof wpUserData !== 'undefined' && wpUserData.isLoggedIn) {
return {
isLoggedIn: true,
userId: wpUserData.userId,
username: wpUserData.username,
email: wpUserData.email,
displayName: wpUserData.displayName
};
}
return {
isLoggedIn: false
};
}// 2. Función para inicializar el chat con datos del usuario
function initializeChatWithUser() {
const userData = getWordPressUserData();
if (userData.isLoggedIn) {
console.log('Usuario WordPress detectado:', userData.username);
// Guardar datos del usuario para el chat
localStorage.setItem('chatUser', JSON.stringify({
id: userData.userId,
username: userData.username,
email: userData.email,
displayName: userData.displayName,
source: 'wordpress'
}));// Disparar evento personalizado para que el chat sepa que hay usuario
window.dispatchEvent(new CustomEvent('wordpressUserReady', {
detail: userData
}));
} else {
console.log('No hay usuario logueado en WordPress');
localStorage.removeItem('chatUser');
// Opcional: redirigir a login o mostrar mensaje
showLoginPrompt();
}
}// 3. Función para mostrar prompt de login si no hay usuario
function showLoginPrompt() {
// Puedes personalizar este mensaje
const loginDiv = document.createElement('div');
loginDiv.innerHTML = `
`;
// Insertar antes del chat (ajusta el selector según tu HTML)
const chatContainer = document.querySelector('#chat-container') || document.querySelector('.chat-container');
if (chatContainer) {
chatContainer.parentNode.insertBefore(loginDiv, chatContainer);
}
}// 4. Función para obtener historial del usuario desde Supabase
function loadUserChatHistory() {
const userData = JSON.parse(localStorage.getItem('chatUser') || '{}');
if (userData.id) {
// Este evento lo debe escuchar tu chat para cargar el historial
window.dispatchEvent(new CustomEvent('loadChatHistory', {
detail: {
userId: userData.id,
username: userData.username
}
}));
}
}// 5. Inicializar cuando la página esté lista
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initializeChatWithUser);
} else {
initializeChatWithUser();
}// 6. Cargar historial después de inicializar usuario
setTimeout(loadUserChatHistory, 1000);})();