summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMaks Jopek <maksymilian.jopek@prym-soft.pl>2021-05-26 18:50:18 +0200
committerMaks Jopek <maksymilian.jopek@prym-soft.pl>2021-05-26 18:50:18 +0200
commit1afb236c2d6828883e139652dd8c89d8949b8039 (patch)
tree905386f1ee4210937682d62d7f75bdc771184c80 /src
parentaa13f322e2d59fdc3c50371572c0cad443b798ec (diff)
downloadIRC-1afb236c2d6828883e139652dd8c89d8949b8039.tar.gz
IRC-1afb236c2d6828883e139652dd8c89d8949b8039.tar.zst
IRC-1afb236c2d6828883e139652dd8c89d8949b8039.zip
Version v1.0.2
Diffstat (limited to 'src')
-rw-r--r--src/index.ts34
-rw-r--r--src/modules/helpers.ts2
-rw-r--r--src/modules/messages.ts10
3 files changed, 23 insertions, 23 deletions
diff --git a/src/index.ts b/src/index.ts
index 670e861..5845a7d 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -35,23 +35,21 @@ export default class Irc {
this.poll();
}
- poll(): void {
+ async poll(): Promise<void> {
console.log("polling");
- $.ajax({
- url: this.messages.url + "poll",
- success: msg => {
- this.messages.addMessage(msg);
- const update =
- document.activeElement === this.input ? "bottom" : "relative";
- this.helpers.updateScrollbar(update);
- this.poll();
- },
- error: () => {
- this.poll();
- },
- timeout: 30000, // 30 seconds
- });
+ fetch(this.messages.url + "poll")
+ .then(msg =>
+ msg.json().then(msg => {
+ this.messages.addMessage(msg);
+ const update =
+ document.activeElement === this.input ? "bottom" : "relative";
+
+ this.helpers.updateScrollbar(update);
+ this.poll();
+ })
+ )
+ .catch(this.poll);
}
messageExe(msg: string): boolean {
@@ -69,7 +67,7 @@ export default class Irc {
if (msg.startsWith("quit") === true) {
msgToSend.text = `User ${this.username} has left the chat`;
this.messages.sendMessage(msgToSend);
-
+
this.helpers.suicide(
"Thank you for using this site, you can now safely close it."
);
@@ -79,7 +77,7 @@ export default class Irc {
if (this.helpers.isColor(color) === true) {
msgToSend.text = `User ${this.username} has changed his color to ${color}`;
this.messages.sendMessage(msgToSend);
-
+
this.color = color;
} else {
this.divError.innerText = "You need to give correct color!";
@@ -92,7 +90,7 @@ export default class Irc {
} else {
msgToSend.text = `User ${this.username} has changed his nick to ${username}`;
this.messages.sendMessage(msgToSend);
-
+
this.username = username;
}
} else {
diff --git a/src/modules/helpers.ts b/src/modules/helpers.ts
index 862f121..ab5ed15 100644
--- a/src/modules/helpers.ts
+++ b/src/modules/helpers.ts
@@ -2,7 +2,7 @@ export default class Helpers {
//@ts-expect-error
readonly chatListScroll = $("#chatlist").tinyscrollbar();
- isColor(strColor: string) {
+ isColor(strColor: string): boolean {
const s = new Option().style;
s.color = strColor;
return s.color !== "";
diff --git a/src/modules/messages.ts b/src/modules/messages.ts
index 45e9446..67e3983 100644
--- a/src/modules/messages.ts
+++ b/src/modules/messages.ts
@@ -16,7 +16,6 @@ export default class Messages {
async addMessage(msg: Message): Promise<void> {
const board = $(".overview")[0],
- time = new Date(msg.time),
div = document.createElement("div"),
spans = [
document.createElement("span"),
@@ -24,11 +23,14 @@ export default class Messages {
document.createElement("span"),
];
- let min = new Date().getMinutes().toString();
+ let min = new Date().getMinutes().toString(),
+ h = new Date().getHours().toString();
+
min = min.length === 1 ? "0" + min : min;
+ h = h.length === 1 ? "0" + h : h;
- spans[0].innerText = `[${time.getHours()}:${min}] `;
- spans[1].innerText = `<@${msg.username}> `;
+ spans[0].innerText = `[${h}:${min}] `;
+ spans[1].innerText = msg.username === "Server" ? `<${msg.username}> ` : `<@${msg.username}> `;
spans[1].style.color = msg.color;
spans[2].innerText = msg.text;