Remove duplicated method

This commit is contained in:
Bea 2022-12-20 14:49:44 +01:00
parent 4476dd2f7b
commit fc846fa901
4 changed files with 31 additions and 28 deletions

View File

@ -179,20 +179,6 @@ public class ClearChat
}
}
public static void dismissMessage(ButtonInteractionEvent event)
{
if(!(Cache.getDatabaseSource().isUserTrackedFor(event.getUser().getId(), event.getMessageId())))
{
event.reply("❌ You did not run this command!").setEphemeral(true).queue();
} else
{
event.getInteraction().getMessage().delete().queue();
}
}
// cap the amount to avoid abuse.
public static int getMaxAmount() { return 1000; }

View File

@ -120,19 +120,7 @@ public class UrbanDictionary
}
public static void delete(ButtonInteractionEvent event)
{
String messageId = event.getMessageId();
DatabaseSource database = Cache.getDatabaseSource();
// check if the user interacting is the same one who ran the command
if (!(database.isUserTrackedFor(event.getUser().getId(), messageId))) {
event.reply("❌ You did not run this command!").setEphemeral(true).queue();
return;
}
event.getInteraction().getMessage().delete().queue();
}
public static void track(Message message, User user, UrbanSearch search, String sanitizedTerm)
{

View File

@ -5,6 +5,7 @@ import net.dv8tion.jda.api.hooks.ListenerAdapter;
import wtf.beatrice.hidekobot.commands.base.ClearChat;
import wtf.beatrice.hidekobot.commands.base.CoinFlip;
import wtf.beatrice.hidekobot.commands.base.UrbanDictionary;
import wtf.beatrice.hidekobot.util.CommandUtil;
public class ButtonInteractionListener extends ListenerAdapter
{
@ -19,12 +20,12 @@ public class ButtonInteractionListener extends ListenerAdapter
case "coinflip_reflip" -> CoinFlip.buttonReFlip(event);
// clearchat command
case "clear_dismiss" -> ClearChat.dismissMessage(event);
case "clear_dismiss" -> CommandUtil.delete(event);
// urban dictionary navigation
case "urban_nextpage" -> UrbanDictionary.changePage(event, true);
case "urban_previouspage" -> UrbanDictionary.changePage(event, false);
case "urban_delete" -> UrbanDictionary.delete(event);
case "urban_delete" -> CommandUtil.delete(event);
}

View File

@ -0,0 +1,28 @@
package wtf.beatrice.hidekobot.util;
import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent;
import wtf.beatrice.hidekobot.Cache;
import wtf.beatrice.hidekobot.datasources.DatabaseSource;
public class CommandUtil
{
/**
* Function to delete a message when a user clicks the "delete" button attached to that message.
* This will check in the database if that user ran the command originally.
*
* @param event the button interaction event.
*/
public static void delete(ButtonInteractionEvent event)
{
// check if the user interacting is the same one who ran the command
if (!(Cache.getDatabaseSource().isUserTrackedFor(event.getUser().getId(), event.getMessageId()))) {
event.reply("❌ You did not run this command!").setEphemeral(true).queue();
return;
}
// delete the message
event.getInteraction().getMessage().delete().queue();
// no need to manually untrack it from database, it will be purged on the next planned check.
}
}