Added schedule.

This commit is contained in:
retoor 2025-01-28 17:08:18 +01:00
parent da72a15068
commit 99d335ac24
5 changed files with 10 additions and 4 deletions

View File

@ -104,6 +104,7 @@ main {
message-list { message-list {
flex: 1;; flex: 1;;
height: 200px; height: 200px;
padding-bottom: 40px;
overflow-y: auto; overflow-y: auto;
} }
.chat-messages { .chat-messages {

View File

@ -1,10 +1,12 @@
class ChatWindowElement extends HTMLElement { class ChatWindowElement extends HTMLElement {
receivedHistory = false
constructor() { constructor() {
super(); super();
this.attachShadow({ mode: 'open' }); this.attachShadow({ mode: 'open' });
this.component = document.createElement('section'); this.component = document.createElement('section');
this.shadowRoot.appendChild(this.component); this.shadowRoot.appendChild(this.component);
} }
@ -49,9 +51,10 @@ class ChatWindowElement extends HTMLElement {
}) })
const me = this const me = this
channelElement.addEventListener("message",(message)=>{ channelElement.addEventListener("message",(message)=>{
message.detail.element.scrollIntoView({behavior: 'smooth'}) message.detail.element.scrollIntoView()
}) })
} }

View File

@ -10,11 +10,11 @@ class MessageListElement extends HTMLElement {
url = null url = null
container = null container = null
messageEventSchedule = null messageEventSchedule = null
observer = null
constructor() { constructor() {
super() super()
this.attachShadow({ mode: 'open' }); this.attachShadow({ mode: 'open' });
this.component = document.createElement('div') this.component = document.createElement('div')
this.shadowRoot.appendChild(this.component ) this.shadowRoot.appendChild(this.component )
} }
createElement(message){ createElement(message){

View File

@ -37,6 +37,7 @@ class Schedule {
this.timeOut = setTimeout(()=>{ this.timeOut = setTimeout(()=>{
clearTimeout(me.timeOut) clearTimeout(me.timeOut)
me.timeOut = null me.timeOut = null
func(me.timeOutCount)
me.cancelDelay() me.cancelDelay()
me.timeOutCount = 0 me.timeOutCount = 0
}, this.msDelay) }, this.msDelay)

View File

@ -18,6 +18,7 @@ class RPCView(BaseView):
async def get_messages(self, channel_uid,offset=0): async def get_messages(self, channel_uid,offset=0):
messages = [] messages = []
async for message in self.services.channel_message.query("SELECT * FROM channel_message ORDER BY created_at DESC LIMIT 30"): #"SELECT uid, channel_uid, user_uid, message, created_at FROM channel_message WHERE channel_uid = :channel_uid ORDER BY created_at DESC LIMIT 30 OFFSET :offset",{"channel_uid":channel_uid,"offset":int(offset)}): async for message in self.services.channel_message.query("SELECT * FROM channel_message ORDER BY created_at DESC LIMIT 30"): #"SELECT uid, channel_uid, user_uid, message, created_at FROM channel_message WHERE channel_uid = :channel_uid ORDER BY created_at DESC LIMIT 30 OFFSET :offset",{"channel_uid":channel_uid,"offset":int(offset)}):
print("JEEEHHH\n",flush=True) print("JEEEHHH\n",flush=True)
user = await self.services.user.get(uid=message["user_uid"]) user = await self.services.user.get(uid=message["user_uid"])
@ -25,7 +26,7 @@ class RPCView(BaseView):
print("User not found!",flush= True) print("User not found!",flush= True)
continue continue
messages.append(dict( messages.insert(0,dict(
uid=message["uid"], uid=message["uid"],
user_uid=message["user_uid"], user_uid=message["user_uid"],
channel_uid=message["channel_uid"], channel_uid=message["channel_uid"],