aboutsummaryrefslogtreecommitdiff
path: root/webAO/client/saveChatLogHandle.ts
diff options
context:
space:
mode:
authorstonedDiscord <Tukz@gmx.de>2022-09-10 14:12:53 +0200
committerGitHub <noreply@github.com>2022-09-10 14:12:53 +0200
commitabba7630e13f7e5269c14c2c43b66b03559ddfe3 (patch)
tree4770a2375d594ef080aa4ad8262aa2df42831c26 /webAO/client/saveChatLogHandle.ts
parent09a23ea9d7ee37d8e2dfb036786c41ce37496c51 (diff)
parent93979636fb5d1c60f0da3290e80eb3ca9ead992f (diff)
Merge pull request #173 from caleb-mabry/trying-to-minimize
Client at 297 lines
Diffstat (limited to 'webAO/client/saveChatLogHandle.ts')
-rw-r--r--webAO/client/saveChatLogHandle.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/webAO/client/saveChatLogHandle.ts b/webAO/client/saveChatLogHandle.ts
new file mode 100644
index 0000000..bcc1075
--- /dev/null
+++ b/webAO/client/saveChatLogHandle.ts
@@ -0,0 +1,26 @@
+import downloadFile from "../services/downloadFile";
+
+export const saveChatlogHandle = async () => {
+ const clientLog = document.getElementById("client_log")!;
+ const icMessageLogs = clientLog.getElementsByTagName("p");
+ const messages: string[] = [];
+
+ for (let i = 0; i < icMessageLogs.length; i++) {
+ const SHOWNAME_POSITION = 0;
+ const TEXT_POSITION = 2;
+ const showname = icMessageLogs[i].children[SHOWNAME_POSITION].innerHTML;
+ const text = icMessageLogs[i].children[TEXT_POSITION].innerHTML;
+ const message = `${showname}: ${text}`;
+ messages.push(message);
+ }
+ const d = new Date();
+ let ye = new Intl.DateTimeFormat("en", { year: "numeric" }).format(d);
+ let mo = new Intl.DateTimeFormat("en", { month: "short" }).format(d);
+ let da = new Intl.DateTimeFormat("en", { day: "2-digit" }).format(d);
+
+ const filename = `chatlog-${da}-${mo}-${ye}`.toLowerCase();
+ downloadFile(messages.join("\n"), filename);
+
+ // Reset Chatbox to Empty
+ (<HTMLInputElement>document.getElementById("client_inputbox")).value = "";
+}; \ No newline at end of file