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

Method bindButtonEvent

src/webpage/message.ts:1466–1570  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1464 a.textContent = I18n.interactions.ephemeralDismiss();
1465 ephemeral.append(span, a);
1466 div.append(ephemeral);
1467 }
1468 const unreadLine = premessage && premessage.id === this.channel.lastreadmessageid;
1469 let datelineNeeded = false;
1470 if ((premessage || unreadLine) && !dupe) {
1471 const thisTime = new Date(this.getUnixTime());
1472 if (premessage && !unreadLine) {
1473 const prevTime = new Date(premessage.getUnixTime());
1474 datelineNeeded =
1475 thisTime.getDay() !== prevTime.getDay() ||
1476 thisTime.getMonth() !== prevTime.getMonth() ||
1477 thisTime.getFullYear() !== prevTime.getFullYear();
1478 } else {
1479 datelineNeeded = true;
1480 }
1481 if (datelineNeeded) {
1482 const dateline = document.createElement("div");
1483 if (unreadLine) {
1484 dateline.classList.add("unreadDateline");
1485 }
1486 dateline.classList.add("flexltr", "dateline");
1487 dateline.append(document.createElement("hr"));
1488 const span = document.createElement("span");
1489 span.innerText = Intl.DateTimeFormat(I18n.lang, {
1490 year: "numeric",
1491 month: "long",
1492 day: "2-digit",
1493 }).format(thisTime);
1494 dateline.append(span);
1495 dateline.append(document.createElement("hr"));
1496 const messageDiv = document.createElement("div");
1497 messageDiv.append(...Array.from(div.children));
1498 messageDiv.classList = div.classList + "";
1499 div.classList = "";
1500 div.append(dateline, messageDiv);
1501 }
1502 }
1503 this.bindButtonEvent();
1504
1505 if (!dupe && this.thread) {
1506 const thread = this.thread;
1507 const threadBox = document.createElement("div");
1508 threadBox.classList.add("flexttb", "threadBox");
1509 const topRow = document.createElement("div");
1510 topRow.classList.add("flexltr");
1511 const title = document.createElement("span");
1512 title.textContent = thread.name;
1513 topRow.onclick = () => {
1514 this.localuser.goToChannel(thread.id);
1515 };
1516 const messages = document.createElement("span");
1517 messages.classList.add("clickable");
1518 messages.textContent = I18n.message.messages(thread.messageCount + "");
1519 console.log(thread);
1520 topRow.append(title, messages);
1521 threadBox.append(topRow);
1522 div.append(threadBox);
1523 }

Callers 1

generateMessageMethod · 0.95

Calls 14

reactionToggleMethod · 0.95
setEditMethod · 0.95
canDeleteMethod · 0.95
deleteMethod · 0.95
confirmDeleteMethod · 0.95
addMethod · 0.80
emojiReactFreqMethod · 0.80
findMethod · 0.80
setReplyingMethod · 0.80
removeMethod · 0.45
hasPermissionMethod · 0.45

Tested by

no test coverage detected