From 6fcee1ef2913b8518a5b84d0b147e36c2a17b176 Mon Sep 17 00:00:00 2001 From: core Date: Mon, 27 Nov 2023 08:53:22 -0500 Subject: [PATCH] remove the funny html injection --- starkingdoms-client/src/chat.ts | 7 +++++++ starkingdoms-client/src/hub.ts | 17 +++++++++-------- 2 files changed, 16 insertions(+), 8 deletions(-) create mode 100644 starkingdoms-client/src/chat.ts diff --git a/starkingdoms-client/src/chat.ts b/starkingdoms-client/src/chat.ts new file mode 100644 index 0000000000000000000000000000000000000000..6287f2477d479a35cac2d04a109d5cb9cbd2df97 --- /dev/null +++ b/starkingdoms-client/src/chat.ts @@ -0,0 +1,7 @@ +export function addMessage(classname: string, message: string) { + let p = document.createElement("p"); + p.innerText = message; + p.classList.add("message"); + p.classList.add(classname); + document.getElementById("chatbox")!.appendChild(p); +} diff --git a/starkingdoms-client/src/hub.ts b/starkingdoms-client/src/hub.ts index e6cb7a52fa445d13d60e08c32fee84a286c27fcb..c590c1aaba58ab2148347769eb49d343aa87a1b2 100644 --- a/starkingdoms-client/src/hub.ts +++ b/starkingdoms-client/src/hub.ts @@ -13,6 +13,7 @@ import { import {appendPacket} from "./packet_ui.ts"; import {global} from "./main.ts"; import {startRender} from "./rendering.ts"; +import {addMessage} from "./chat.ts"; const logger = createDebug("hub"); @@ -58,7 +59,8 @@ export async function hub_connect(url: string, username: string): PromiseCommand error

`; + addMessage("server-error", "Command error"); + (document.getElementById("chatentry")!).value = ""; return; } @@ -72,7 +74,8 @@ export async function hub_connect(url: string, username: string): Promise${global.me!.username} -> ${target}: ${message}

`; + + addMessage("direct-message", `you -> ${target}: ${message}`); } else { let chat_packet: Packet = { t: PacketType.SendMessage, @@ -133,21 +136,19 @@ export async function hub_connect(url: string, username: string): Promisepacket.c; logger(`message type=${p.message_type} actor=${p.actor} content=${p.content}`); - let chatbox = document.getElementById("chatbox")!; - if (p.message_type == MessageType.Server) { - chatbox.innerHTML += `

[SERVER] ${p.content}

`; + addMessage("server-message", `[SERVER] ${p.content}`); } else if (p.message_type == MessageType.Chat) { - chatbox.innerHTML += `

${p.actor}: ${p.content}

`; + addMessage("global-message", `${p.actor}: ${p.content}`); } else if (p.message_type == MessageType.Direct) { // actor is who sent the message. destination is not included in this packet if (p.actor === global.me!.username) { // skip (shown above) } else { - chatbox.innerHTML += `

${p.actor} -> ${global.me!.username}: ${p.content}

`; + addMessage("direct-message", `${p.actor} -> you: ${p.content}`); } } else { - chatbox.innerHTML += `

[SERVER] ${p.content}

`; + addMessage("server-error", `${p.content}`); } } else { logger(`unrecognized packet type ${packet.t}`);