diff --git a/src/webpage/embed.ts b/src/webpage/embed.ts index d1799d5..3b2e32c 100644 --- a/src/webpage/embed.ts +++ b/src/webpage/embed.ts @@ -398,6 +398,8 @@ class Embed { div.append(button); button.onclick = (_) => { if (this.localuser.info.api.startsWith(info.api)) { + button.textContent = I18n.invite.joining(); + button.disabled = true; fetch(this.localuser.info.api + "/invites/" + json.code, { method: "POST", headers: this.localuser.headers, @@ -406,6 +408,10 @@ class Embed { .then((_) => { if (_.message) { alert(_.message); + button.textContent = I18n.invite.accept(); + button.disabled = false; + } else { + button.textContent = I18n.invite.alreadyJoined(); } }); } else { diff --git a/translations/en.json b/translations/en.json index 543c69d..dc08e76 100644 --- a/translations/en.json +++ b/translations/en.json @@ -464,6 +464,7 @@ "invite": { "accept": "Accept", "alreadyJoined": "Already joined", + "joining": "Joining...", "channel:": "Channel:", "createInvite": "Create invite", "createdAt": "Created at $1",