From cfe0b6cca1bef2adc78ae5d8f15baa9995cddccc Mon Sep 17 00:00:00 2001 From: oasis-bot Date: Mon, 19 Oct 2026 00:44:06 +0200 Subject: [PATCH] karvan: tus mensajes a la derecha tambien al recargar la sala karvan.js solo marcaba como propios los que llegaban despues de abrir la sala; los que pintaba el servidor salian todos como de otra persona. --- src/views/karvan_view.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/views/karvan_view.js b/src/views/karvan_view.js index 54ab789..17f6640 100644 --- a/src/views/karvan_view.js +++ b/src/views/karvan_view.js @@ -18,8 +18,10 @@ const shortId = (id) => { return id.startsWith("@") ? id.slice(1, 7) : id.slice(0, 6); }; -const renderMsg = (m) => - li({ class: "karvan-msg", "data-seq": String(m.seq), "data-mid": m.mid || "" }, +// los propios se marcan ya en el servidor: karvan.js solo marca los que llegan +// despues, y al recargar la sala tus mensajes salian como de otra persona +const renderMsg = (m, selfId) => + li({ class: "karvan-msg" + (selfId && m.from === selfId ? " karvan-msg-self" : ""), "data-seq": String(m.seq), "data-mid": m.mid || "" }, span({ class: "km-from" }, shortId(m.from)), span({ class: "km-text" }, m.text) ); @@ -95,7 +97,7 @@ exports.karvanRoomView = (room, messages, params = {}) => ), div({ class: "kc-status", id: "kc-status" }, "") ), - ul({ class: "karvan-msgs", id: "karvan-msgs" }, ...(messages || []).map(renderMsg)), + ul({ class: "karvan-msgs", id: "karvan-msgs" }, ...(messages || []).map(m => renderMsg(m, params.selfId))), form({ class: "karvan-compose", method: "POST", action: "/karvan/" + room.id + "/msg", id: "karvan-form" }, input({ type: "hidden", name: "from", value: params.selfId || "" }), input({ type: "text", name: "text", id: "karvan-text", placeholder: i18n.karvanSay || "Temporary message…", maxlength: "2000", autocomplete: "off" }),