MCPcopy Create free account
hub / github.com/MathMan05/Fermi / createInviteHTML

Function createInviteHTML

src/webpage/guild.ts:43–108  ·  view source on GitHub ↗
(invite: invitejson)

Source from the content-addressed store, hash-verified

41 const bansp = ProgessiveDecodeJSON<invitejson[]>(url, {
42 headers: guild.headers,
43 });
44 const createInviteHTML = (invite: invitejson) => {
45 const div = document.createElement("div");
46 div.classList.add("templateMiniBox");
47
48 const edit = document.createElement("button");
49 edit.textContent = I18n.edit();
50
51 const code = document.createElement("span");
52 code.textContent = invite.code;
53
54 const used = document.createElement("span");
55 used.textContent = I18n.invite.used(invite.uses + "");
56
57 edit.onclick = () => {
58 const opt = inviteMenu.addSubOptions(invite.code);
59 const inviter = new User(invite.inviter, guild.localuser);
60
61 opt.addMDText(
62 new MarkDown(
63 window.location.origin +
64 "/invite/" +
65 invite.code +
66 "?" +
67 new URLSearchParams([["instance", guild.localuser.instanceString()]]),
68 undefined,
69 ),
70 );
71
72 opt.addText(I18n.invite.used(invite.uses + ""));
73 if (invite.max_uses !== 0) opt.addText(I18n.invite.maxUses(invite.max_uses + ""));
74
75 const channel = guild.channels.find((_) => _.id == invite.channel_id);
76 if (channel) {
77 opt.addText(I18n.invite.forChannel(channel.name));
78 }
79
80 opt.addText(I18n.invite.createdAt(new Date(invite.created_at).toLocaleDateString(I18n.lang)));
81
82 let expires = I18n.invite.never();
83 if (invite.expires_at) {
84 expires = new Date(invite.expires_at).toLocaleDateString(I18n.lang);
85 }
86 opt.addText(I18n.invite.expires(expires));
87
88 opt.addText(I18n.webhooks.createdBy());
89 opt.addHTMLArea(inviter.createWidget(guild));
90
91 opt.addButtonInput("", I18n.delete(), async () => {
92 if (
93 (
94 await fetch(guild.info.api + "/invites/" + invite.code, {
95 method: "DELETE",
96 headers: guild.headers,
97 })
98 ).ok
99 ) {
100 invsArr = invsArr.filter((_) => _ !== invite);

Callers 2

addHTMLFunction · 0.85
loadPageFunction · 0.85

Calls 13

createWidgetMethod · 0.95
loadPageFunction · 0.85
addMethod · 0.80
instanceStringMethod · 0.80
findMethod · 0.80
returnFromSubMethod · 0.80
editMethod · 0.45
addSubOptionsMethod · 0.45
addMDTextMethod · 0.45
addTextMethod · 0.45
addHTMLAreaMethod · 0.45
addButtonInputMethod · 0.45

Tested by

no test coverage detected