fix: Auto-add all users to website room
Keep website room open for all - currently only used for discussions
This commit is contained in:
parent
dbed3e4788
commit
40df601a73
4 changed files with 13 additions and 10 deletions
|
|
@ -157,3 +157,7 @@ def get_site_room():
|
|||
|
||||
def get_task_progress_room(task_id):
|
||||
return f"{frappe.local.site}:task_progress:{task_id}"
|
||||
|
||||
|
||||
def get_website_room():
|
||||
return f"{frappe.local.site}:website"
|
||||
|
|
|
|||
|
|
@ -70,7 +70,6 @@ const show_new_topic_modal = (e) => {
|
|||
|
||||
const setup_socket_io = () => {
|
||||
frappe.socketio.init(window.socketio_port || "9000");
|
||||
frappe.socketio.socket.emit("website");
|
||||
frappe.socketio.socket.on("publish_message", (data) => {
|
||||
publish_message(data);
|
||||
});
|
||||
|
|
|
|||
|
|
@ -3,13 +3,14 @@
|
|||
|
||||
import frappe
|
||||
from frappe.model.document import Document
|
||||
from frappe.realtime import get_website_room
|
||||
|
||||
|
||||
class DiscussionReply(Document):
|
||||
def on_update(self):
|
||||
frappe.publish_realtime(
|
||||
event="update_message",
|
||||
room="website",
|
||||
room=get_website_room(),
|
||||
message={"reply": frappe.utils.md_to_html(self.reply), "reply_name": self.name},
|
||||
after_commit=True,
|
||||
)
|
||||
|
|
@ -42,7 +43,7 @@ class DiscussionReply(Document):
|
|||
|
||||
frappe.publish_realtime(
|
||||
event="publish_message",
|
||||
room="website",
|
||||
room=get_website_room(),
|
||||
message={
|
||||
"template": template,
|
||||
"topic_info": topic_info[0],
|
||||
|
|
@ -55,7 +56,10 @@ class DiscussionReply(Document):
|
|||
|
||||
def after_delete(self):
|
||||
frappe.publish_realtime(
|
||||
event="delete_message", room="website", message={"reply_name": self.name}, after_commit=True
|
||||
event="delete_message",
|
||||
room=get_website_room(),
|
||||
message={"reply_name": self.name},
|
||||
after_commit=True,
|
||||
)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -51,17 +51,13 @@ io.use((socket, next) => {
|
|||
|
||||
// on socket connection
|
||||
io.on("connection", function (socket) {
|
||||
const room = get_user_room(socket, socket.user);
|
||||
socket.join(room);
|
||||
socket.join(get_user_room(socket, socket.user));
|
||||
socket.join(get_website_room(socket));
|
||||
|
||||
if (socket.user_type == "System User") {
|
||||
socket.join(get_site_room(socket));
|
||||
}
|
||||
|
||||
socket.on("website", () => {
|
||||
socket.join(get_website_room(socket));
|
||||
});
|
||||
|
||||
socket.on("list_update", function (doctype) {
|
||||
can_subscribe_list({
|
||||
socket,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue