comparison src/chat.js @ 59:8270106644db

add chat.luan
author Franklin Schmidt <fschmidt@gmail.com>
date Tue, 04 Mar 2025 08:22:45 -0700
parents 323ddacc1593
children 3521166513b3
comparison
equal deleted inserted replaced
58:7b6691bd65c3 59:8270106644db
14 function setUserEventSource(userId) { 14 function setUserEventSource(userId) {
15 let userEventSource = new EventSource(`${location.origin}/user/${userId}`); 15 let userEventSource = new EventSource(`${location.origin}/user/${userId}`);
16 userEventSource.onmessage = evalEvent; 16 userEventSource.onmessage = evalEvent;
17 } 17 }
18 18
19 function selectChat(div,email) { 19 function selectChat(chatId) {
20 document.querySelector('div[chat_content]').setAttribute('show','posts'); 20 document.querySelector('div[chat_content]').setAttribute('show','posts');
21 let chatId = div.getAttribute('chat');
22 if( chatId === currentChatId ) 21 if( chatId === currentChatId )
23 return; 22 return;
23 let div = document.querySelector(`div[chat="${chatId}"]`);
24 let selected = div.parentNode.querySelector('[selected]'); 24 let selected = div.parentNode.querySelector('[selected]');
25 if( selected ) selected.removeAttribute('selected'); 25 if( selected ) selected.removeAttribute('selected');
26 div.setAttribute('selected',''); 26 div.setAttribute('selected','');
27 ajax(`get_chat.js?chat=${chatId}`); 27 ajax(`get_chat.js?chat=${chatId}`);
28 currentChatId = chatId; 28 currentChatId = chatId;
29 history.replaceState(null,null,`?with=${email}`); 29 history.replaceState(null,null,`?chat=${chatId}`);
30 clearUnread(); 30 clearUnread();
31 31
32 if(eventSource) eventSource.close(); 32 if(eventSource) eventSource.close();
33 eventSource = new EventSource(`${location.origin}/chat/${chatId}`); 33 eventSource = new EventSource(`${location.origin}/chat/${chatId}`);
34 eventSource.onmessage = evalEvent; 34 eventSource.onmessage = evalEvent;