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

Method renderThread

src/webpage/channel.ts:1987–2071  ·  view source on GitHub ↗
(update = true)

Source from the content-addressed store, hash-verified

1985 tags.classList.add("flexltr", "tagDiv");
1986 for (const tagid of this.appliedTags) {
1987 const tag = this.parent?.availableTags.find((tag) => tag.id === tagid);
1988 if (!tag) continue;
1989 tags.append(tag.makeHTML());
1990 }
1991 div.append(tags);
1992
1993 const title = document.createElement("h3");
1994 title.textContent = new MarkDown(this.shortName).makeHTML().textContent;
1995 div.append(title);
1996
1997 const member =
1998 (await this.localuser.getMember(this.owner_id as string, this.guild.id)) ||
1999 (await User.resolve(this.owner_id as string, this.localuser));
2000 const message = this.localuser.messages.get(this.id);
2001
2002 const name = document.createElement("span");
2003 name.classList.add("forumUsername");
2004 name.textContent = (member?.name || I18n.user.deleted()) + ": ";
2005
2006 const messageContent = document.createElement("span");
2007 messageContent.classList.add("messageForumContent");
2008 if (message) messageContent.append(message.content.makeHTML());
2009 else messageContent.textContent = I18n.message.deleted();
2010
2011 const mrow = document.createElement("div");
2012 mrow.classList.add("flexltr");
2013 mrow.append(name, messageContent);
2014 div.append(mrow);
2015
2016 const micon = document.createElement("span");
2017 micon.classList.add("svg-frmessage", "svgicon");
2018
2019 const mcount = document.createElement("span");
2020 mcount.textContent = this.messageCount + "";
2021
2022 const msep = document.createElement("span");
2023 msep.classList.add("msep");
2024
2025 const mtime = document.createElement("span");
2026 const updateTime = () => {
2027 mtime.textContent = MarkDown.relTime(
2028 new Date(
2029 this.lastmessageid ? SnowFlake.stringToUnixTime(this.lastmessageid) : this.getUnixTime(),
2030 ),
2031 () => {
2032 if (!document.contains(mtime)) return;
2033 updateTime();
2034 },
2035 );
2036 };
2037 updateTime();
2038
2039 const lrow = document.createElement("div");
2040 lrow.classList.add("forumMessageRow", "flexltr");
2041
2042 lrow.append(micon, mcount, msep, mtime);
2043 div.append(lrow);
2044

Callers 2

upMethod · 0.95
renderDivMethod · 0.80

Calls 7

getHTMLMethod · 0.95
addMethod · 0.80
bindContextmenuMethod · 0.80
findMethod · 0.80
getMemberMethod · 0.80
makeHTMLMethod · 0.45
resolveMethod · 0.45

Tested by

no test coverage detected