Skip to content

Commit f8963d1

Browse files
committed
chore: cleanup reaction handling code
1 parent baeb431 commit f8963d1

File tree

2 files changed

+33
-32
lines changed

2 files changed

+33
-32
lines changed

src/main/kotlin/me/ddivad/judgebot/listeners/MemberReactionListeners.kt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,13 @@ fun onMemberReactionAdd(configuration: Configuration) = listeners {
1717
val guildConfiguration = configuration[guild.asGuild().id.longValue]
1818
if (!guildConfiguration?.reactions!!.enabled) return@on
1919

20-
if (this.emoji.name == guildConfiguration.reactions.flagMessageReaction) {
21-
message.deleteReaction(this.emoji)
22-
guild.asGuild().getChannelOf<TextChannel>(guildConfiguration.loggingConfiguration.alertChannel.toSnowflake())
23-
.asChannel().createMessage("User ${user.mention} flagged the message: " +
24-
"${this.message.asMessage().jumpLink(guild.id.value)} in: ${this.channel.mention}").addReaction(Emojis.whiteCheckMark)
20+
when (this.emoji.name) {
21+
guildConfiguration.reactions.flagMessageReaction -> {
22+
message.deleteReaction(this.emoji)
23+
guild.asGuild().getChannelOf<TextChannel>(guildConfiguration.loggingConfiguration.alertChannel.toSnowflake()).asChannel()
24+
.createMessage("User ${user.mention} flagged the message: ${this.message.asMessage().jumpLink(guild.id.value)} in: ${this.channel.mention}")
25+
.addReaction(Emojis.whiteCheckMark)
26+
}
2527
}
2628
}
2729
}

src/main/kotlin/me/ddivad/judgebot/listeners/StaffReactionListeners.kt

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,35 +22,34 @@ fun onStaffReactionAdd(muteService: MuteService,
2222
val guild = guild?.asGuildOrNull() ?: return@on
2323
val guildConfiguration = configuration[guild.asGuild().id.longValue]
2424
if (!guildConfiguration?.reactions!!.enabled) return@on
25-
26-
user.asMemberOrNull(guild.id)?.let {
27-
val messageAuthor = message.asMessage().author?.asMemberOrNull(guild.id) ?: return@on
28-
if (permissionsService.hasPermission(it, PermissionLevel.Moderator) && !it.isHigherRankedThan(permissionsService, messageAuthor)) {
29-
when (this.emoji.name) {
30-
guildConfiguration.reactions.gagReaction -> {
31-
message.deleteReaction(this.emoji)
32-
muteService.gag(messageAuthor.asMember(guild.id))
33-
it.sendPrivateMessage("${messageAuthor.mention} gagged.")
34-
}
35-
guildConfiguration.reactions.historyReaction -> {
36-
message.deleteReaction(this.emoji)
37-
val target = databaseService.users.getOrCreateUser(messageAuthor, guild.asGuild())
38-
it.sendPrivateMessage { createSelfHistoryEmbed(messageAuthor, target, guild.asGuild(), configuration) }
39-
}
40-
guildConfiguration.reactions.deleteMessageReaction -> {
41-
val content = message.asMessage()
42-
message.deleteReaction(this.emoji)
43-
message.delete()
44-
try {
45-
messageAuthor.sendPrivateMessage {
46-
createMessageDeleteEmbed(guild, content)
47-
}
48-
} catch (ex: RequestException) {
49-
this.user.sendPrivateMessage("User ${messageAuthor.mention} has DM's disabled." +
50-
" Message deleted without notification.")
25+
val member = user.asMemberOrNull(guild.id) ?: return@on
26+
val messageAuthor = message.asMessage().author?.asMemberOrNull(guild.id) ?: return@on
27+
28+
if (permissionsService.hasPermission(member, PermissionLevel.Moderator) && !member.isHigherRankedThan(permissionsService, messageAuthor)) {
29+
when (this.emoji.name) {
30+
guildConfiguration.reactions.gagReaction -> {
31+
message.deleteReaction(this.emoji)
32+
muteService.gag(messageAuthor.asMember(guild.id))
33+
member.sendPrivateMessage("${messageAuthor.mention} gagged.")
34+
}
35+
guildConfiguration.reactions.historyReaction -> {
36+
message.deleteReaction(this.emoji)
37+
val target = databaseService.users.getOrCreateUser(messageAuthor, guild.asGuild())
38+
member.sendPrivateMessage { createSelfHistoryEmbed(messageAuthor, target, guild.asGuild(), configuration) }
39+
}
40+
guildConfiguration.reactions.deleteMessageReaction -> {
41+
val content = message.asMessage()
42+
message.deleteReaction(this.emoji)
43+
message.delete()
44+
try {
45+
messageAuthor.sendPrivateMessage {
46+
createMessageDeleteEmbed(guild, content)
5147
}
52-
48+
} catch (ex: RequestException) {
49+
this.user.sendPrivateMessage("User ${messageAuthor.mention} has DM's disabled." +
50+
" Message deleted without notification.")
5351
}
52+
5453
}
5554
}
5655
}

0 commit comments

Comments
 (0)