Skip to content

Commit 4ba7abb

Browse files
Applied changes as per CR
1 parent 485be22 commit 4ba7abb

File tree

2 files changed

+14
-10
lines changed

2 files changed

+14
-10
lines changed

application/src/main/java/org/togetherjava/tjbot/config/StarboardConfig.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ public List<String> getEmojiNames() {
3838
*
3939
* @return the name of the channel with the starboard
4040
*/
41-
4241
public String getChannelName() {
4342
return channelName;
4443
}

application/src/main/java/org/togetherjava/tjbot/features/basic/Starboard.java

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,31 +31,36 @@ public Starboard(Config config) {
3131

3232
@Override
3333
public void onMessageReactionAdd(@NotNull MessageReactionAddEvent event) {
34-
String emojiName = event.getReaction().getEmoji().asCustom().getName();
34+
String emojiName = event.getEmoji().asCustom().getName();
3535
Guild guild = event.getGuild();
36-
GuildChannel channel = event.getGuildChannel();
37-
if (!config.getEmojiNames().contains(emojiName)
38-
|| !guild.getPublicRole().hasPermission(channel, Permission.VIEW_CHANNEL)) {
36+
if (ignoreMessage(emojiName, guild, event.getGuildChannel())) {
3937
return;
4038
}
41-
Optional<TextChannel> starboardChannel =
42-
guild.getTextChannelsByName(config.getChannelName(), false).stream().findFirst();
39+
Optional<TextChannel> starboardChannel = getStarboardChannel(guild);
4340
if (starboardChannel.isEmpty()) {
4441
logger.warn("There is no channel for the starboard in the guild with the name {}",
4542
config.getChannelName());
4643
return;
4744
}
48-
event.getChannel()
49-
.retrieveMessageById(event.getMessageId())
45+
event.retrieveMessage()
5046
.flatMap(
5147
message -> starboardChannel.orElseThrow().sendMessageEmbeds(formEmbed(message)))
5248
.queue();
5349
}
5450

51+
private boolean ignoreMessage(String emojiName, Guild guild, GuildChannel channel) {
52+
return !config.getEmojiNames().contains(emojiName)
53+
|| !guild.getPublicRole().hasPermission(channel, Permission.VIEW_CHANNEL);
54+
}
55+
56+
private Optional<TextChannel> getStarboardChannel(Guild guild) {
57+
return guild.getTextChannelsByName(config.getChannelName(), false).stream().findFirst();
58+
}
59+
5560
private static MessageEmbed formEmbed(Message message) {
5661
User author = message.getAuthor();
5762
return new EmbedBuilder().setAuthor(author.getName(), null, author.getAvatarUrl())
5863
.setDescription(message.getContentDisplay())
59-
.build(); // Maybe set footer as reacted emoji?
64+
.build(); // TODO make footer with link and reacted emojis
6065
}
6166
}

0 commit comments

Comments
 (0)