feat: notify mods when users are warned (#5441)

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
This commit is contained in:
iProdigy
2024-06-06 05:13:13 -05:00
committed by GitHub
parent 248cd46eb7
commit d2316af70f
7 changed files with 90 additions and 2 deletions
+25
View File
@@ -323,6 +323,31 @@ MessageBuilder::MessageBuilder(const UnbanAction &action)
this->message().searchText = text;
}
MessageBuilder::MessageBuilder(const WarnAction &action)
: MessageBuilder()
{
this->emplace<TimestampElement>();
this->message().flags.set(MessageFlag::System);
QString text;
// TODO: Use MentionElement here, once WarnAction includes username/displayname
this->emplaceSystemTextAndUpdate("A moderator", text)
->setLink({Link::UserInfo, "id:" + action.source.id});
this->emplaceSystemTextAndUpdate("warned", text);
this->emplaceSystemTextAndUpdate(
action.target.login + (action.reasons.isEmpty() ? "." : ":"), text)
->setLink({Link::UserInfo, action.target.login});
if (!action.reasons.isEmpty())
{
this->emplaceSystemTextAndUpdate(action.reasons.join(", "), text);
}
this->message().messageText = text;
this->message().searchText = text;
}
MessageBuilder::MessageBuilder(const AutomodUserAction &action)
: MessageBuilder()
{