Implemented onButtonInteraction
This commit is contained in:
parent
b91f141c08
commit
1d9afbc283
|
|
@ -2,12 +2,16 @@ package com.alttd.buttonManager;
|
||||||
|
|
||||||
import com.alttd.buttonManager.buttons.suggestionReview.ButtonSuggestionReviewAccept;
|
import com.alttd.buttonManager.buttons.suggestionReview.ButtonSuggestionReviewAccept;
|
||||||
import com.alttd.buttonManager.buttons.suggestionReview.ButtonSuggestionReviewDeny;
|
import com.alttd.buttonManager.buttons.suggestionReview.ButtonSuggestionReviewDeny;
|
||||||
|
import com.alttd.util.Util;
|
||||||
|
import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent;
|
import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent;
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
import net.dv8tion.jda.api.interactions.components.buttons.Button;
|
import net.dv8tion.jda.api.interactions.components.buttons.Button;
|
||||||
|
import net.dv8tion.jda.api.requests.RestAction;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
|
|
@ -23,7 +27,21 @@ public class ButtonManager extends ListenerAdapter {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onButtonInteraction(@NotNull ButtonInteractionEvent event) {
|
public void onButtonInteraction(@NotNull ButtonInteractionEvent event) {
|
||||||
|
String buttonId = event.getButton().getId();
|
||||||
|
Optional<DiscordButton> first = buttons.stream()
|
||||||
|
.filter(discordModal -> discordModal.getButtonId().equalsIgnoreCase(buttonId))
|
||||||
|
.findFirst();
|
||||||
|
if (first.isEmpty()) {
|
||||||
|
event.replyEmbeds(new EmbedBuilder()
|
||||||
|
.setTitle("Invalid command")
|
||||||
|
.setDescription("Unable to process button with id: [" + buttonId + "], please report this issue to a Teri")
|
||||||
|
.setColor(Color.RED)
|
||||||
|
.build())
|
||||||
|
.setEphemeral(true)
|
||||||
|
.queue(RestAction.getDefaultSuccess(), Util::handleFailure);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
first.get().execute(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
public @Nullable Button getButtonFor(String buttonId) {
|
public @Nullable Button getButtonFor(String buttonId) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user