Improve navigation bar;

Fix an error upon aggregation of PubSub item entries.
This commit is contained in:
Schimon Jehudah, Adv. 2024-10-13 21:24:14 +03:00
parent aa90d922b0
commit 928f5272e0
4 changed files with 47 additions and 22 deletions

17
fasi.py
View file

@ -186,6 +186,7 @@ class HttpInstance:
# Group chat messages
action = 'Join'
messages = []
# TODO Create configurations for group chat preview
room_info_muc = await XmppXep0045.get_room_information(xmpp_instance, jid_bare, alias, maxstanzas=50)
messages = room_info_muc['iq'][3]
messages.reverse()
@ -196,9 +197,11 @@ class HttpInstance:
page_number = int(page_number)
ix = (page_number -1) * 10
except:
ix = page_number = 0
ix = 0
page_number = 1
else:
ix = page_number = 0
ix = 0
page_number = 1
messages_10 = messages[ix:][:10]
number_of_pages = int(len(messages) / 10)
if number_of_pages < len(messages) / 10: number_of_pages += 1
@ -293,6 +296,7 @@ class HttpInstance:
'previous' : previous,
'request' : request,
'subject' : subject,
'title' : jid_detail['name'],
'url' : request.url._url,
'xmpp_uri' : xmpp_uri}
response = templates.TemplateResponse(template_file, template_dict)
@ -438,9 +442,11 @@ class HttpInstance:
page_number = int(page_number)
ix = (page_number -1) * 10
except:
ix = page_number = 0
ix = 0
page_number = 1
else:
ix = page_number = 0
ix = 0
page_number = 1
item_ids_10 = item_ids[ix:][:10]
node_items = await XmppXep0060.get_node_items(xmpp_instance, jid_bare, node_name, item_ids=item_ids_10)
number_of_pages = int(len(item_ids) / 10)
@ -468,7 +474,7 @@ class HttpInstance:
for item in node_items['pubsub']['items']:
item_payload = item['payload']
entry = Syndication.extract_items(item_payload)
entry['id'] = item['id']
if entry: entry['id'] = item['id']
entries.append(entry)
#if len(entries) > 10: break
if entries: entries.reverse()
@ -542,6 +548,7 @@ class HttpInstance:
'page_number' : page_number,
'previous' : previous,
'request' : request,
'title' : node_title,
'url' : request.url._url,
'xmpp_uri' : xmpp_uri}
response = templates.TemplateResponse(template_file, template_dict)