Focus textbox. Updated pagination.
This commit is contained in:
parent
2e69ac5921
commit
8c33bc63d6
@ -51,12 +51,20 @@ class ChannelMessageService(BaseService):
|
|||||||
"username": user['username']
|
"username": user['username']
|
||||||
}
|
}
|
||||||
|
|
||||||
async def offset(self, channel_uid, page=0, page_size=30):
|
async def offset(self, channel_uid, page=0, timestamp = None, page_size=30):
|
||||||
results = []
|
results = []
|
||||||
offset = page * page_size
|
offset = page * page_size
|
||||||
try:
|
try:
|
||||||
async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid ORDER BY created_at DESC LIMIT :page_size OFFSET :offset",dict(channel_uid=channel_uid, page_size=page_size, offset=offset)):
|
if not timestamp:
|
||||||
results.append(model)
|
async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid ORDER BY created_at DESC LIMIT :page_size OFFSET :offset",dict(channel_uid=channel_uid, page_size=page_size, offset=offset)):
|
||||||
|
results.append(model)
|
||||||
|
elif page >= 0:
|
||||||
|
async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid WHERE created_at > :timestamp ORDER BY created_at DESC LIMIT :page_size OFFSET :offset",dict(channel_uid=channel_uid, page_size=page_size, offset=offset,timestamp=timestamp )):
|
||||||
|
results.append(model)
|
||||||
|
else:
|
||||||
|
async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid WHERE created_at < :timestamp ORDER BY created_at DESC LIMIT :page_size OFFSET :offset",dict(channel_uid=channel_uid, page_size=page_size, offset=offset,timestamp=timestamp )):
|
||||||
|
results.append(model)
|
||||||
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
results.sort(key=lambda x: x['created_at'])
|
results.sort(key=lambda x: x['created_at'])
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
textBox.focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateTimes() {
|
function updateTimes() {
|
||||||
|
@ -71,10 +71,10 @@ class RPCView(BaseView):
|
|||||||
del record['email']
|
del record['email']
|
||||||
return record
|
return record
|
||||||
|
|
||||||
async def get_messages(self, channel_uid, offset=0):
|
async def get_messages(self, channel_uid, offset=0,timestamp = None):
|
||||||
self._require_login()
|
self._require_login()
|
||||||
messages = []
|
messages = []
|
||||||
for message in await self.services.channel_message.offset(channel_uid, offset):
|
for message in await self.services.channel_message.offset(channel_uid, offset or 0,timestamp or None):
|
||||||
extended_dict = await self.services.channel_message.to_extended_dict(message)
|
extended_dict = await self.services.channel_message.to_extended_dict(message)
|
||||||
messages.append(extended_dict)
|
messages.append(extended_dict)
|
||||||
return messages
|
return messages
|
||||||
|
Loading…
Reference in New Issue
Block a user