Mercurial > libervia-web
diff libervia/web/server/restricted_bridge.py @ 1642:c03297bb8d19
server, browser (forums): Redesign of the forum feature:
Forum has been fully redesigned, it now uses pubsub relationships and pubsub extended
discovery to handle the hierarchy.
Categories lead to topics (which are the name of the items of a blog-like nodes). Topics
have comment nodes which are used to show the topic messages.
Subscription state is retrieve when a thread is shown, and can be changed easily with as
ingle button click.
Quill editor is used, and is extended with Quill-Mention to easily send a mention to an
XMPP entity.
Attachments and tags are handled with buttons added to Quill editor.
Search in a thread is using Pubsub MAM, is the same way as for blogs.
rel 463
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 06 Sep 2025 16:30:46 +0200 |
parents | 301fe2f1a34a |
children |
line wrap: on
line diff
--- a/libervia/web/server/restricted_bridge.py Sat Sep 06 12:12:42 2025 +0200 +++ b/libervia/web/server/restricted_bridge.py Sat Sep 06 16:30:46 2025 +0200 @@ -220,6 +220,14 @@ "message_send", to_jid_s, message, subject, mess_type, extra_s, profile ) + async def ps_invite( + self, invitee_jid_s, service_s, node, item_id, name, extra_s, profile + ): + self.no_service_profile(profile) + return await self.host.bridge_call( + "ps_invite", invitee_jid_s, service_s, node, item_id, name, extra_s, profile + ) + async def ps_node_delete(self, service_s, node, profile): self.no_service_profile(profile) return await self.host.bridge_call( @@ -235,11 +243,49 @@ return await self.host.bridge_call( "ps_item_retract", service_s, node, item_id, notify, profile) + async def ps_attachments_get( + self, service_s: str, node: str, item: str, senders_s: list[str], extra_s: str, + profile: str + ) -> None: + return await self.host.bridge_call( + "ps_attachments_get", service_s, node, item, senders_s, extra_s, profile + ) + + async def ps_attachments_set( + self, attachments_s: str, profile: str + ) -> None: + self.no_service_profile(profile) + return await self.host.bridge_call( + "ps_attachments_set", attachments_s, profile + ) + + async def ps_subscribe( + self, service_s, node, options_s, profile: str + ) -> str: + self.no_service_profile(profile) + return await self.host.bridge_call( + "ps_subscribe", service_s, node, options_s, profile + ) + + async def ps_unsubscribe( + self, service_s, node, profile: str + ) -> str: + self.no_service_profile(profile) + return await self.host.bridge_call( + "ps_unsubscribe", service_s, node, profile + ) + async def mb_preview(self, data, profile): return await self.host.bridge_call( "mb_preview", data, profile ) + async def mb_send(self, data_s, profile): + self.no_service_profile(profile) + return await self.host.bridge_call( + "mb_send", data_s, profile + ) + async def list_set(self, service_s, node, values, schema, item_id, extra, profile): self.no_service_profile(profile) return await self.host.bridge_call( @@ -315,14 +361,6 @@ "muc_join", room_jid_s, nick, options, profile ) - async def ps_invite( - self, invitee_jid_s, service_s, node, item_id, name, extra_s, profile - ): - self.no_service_profile(profile) - return await self.host.bridge_call( - "ps_invite", invitee_jid_s, service_s, node, item_id, name, extra_s, profile - ) - async def fis_invite( self, invitee_jid_s, service_s, repos_type, namespace, path, name, extra_s, profile @@ -374,22 +412,6 @@ "jid_search", search_term, options_s, profile ) - async def ps_attachments_get( - self, service_s: str, node: str, item: str, senders_s: list[str], extra_s: str, - profile: str - ) -> None: - return await self.host.bridge_call( - "ps_attachments_get", service_s, node, item, senders_s, extra_s, profile - ) - - async def ps_attachments_set( - self, attachments_s: str, profile: str - ) -> None: - self.no_service_profile(profile) - return await self.host.bridge_call( - "ps_attachments_set", attachments_s, profile - ) - async def remote_control_start( self, peer_jid_s: str, extra_s: str, profile: str ) -> None: