aboutsummaryrefslogtreecommitdiff
path: root/commands/pony.js
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-01-09 18:22:55 +0100
committerMinteck <contact@minteck.org>2022-01-09 18:22:55 +0100
commit7d0d6272c8bf5260da53210c8ed327980e396397 (patch)
tree6812176231961767e9b7aa731193abb387bbc107 /commands/pony.js
parentdc65563df84d80bcc0970febef6a5f9a7759bdcb (diff)
downloadponyfind-7d0d6272c8bf5260da53210c8ed327980e396397.tar.gz
ponyfind-7d0d6272c8bf5260da53210c8ed327980e396397.tar.bz2
ponyfind-7d0d6272c8bf5260da53210c8ed327980e396397.zip
Update
Diffstat (limited to 'commands/pony.js')
-rw-r--r--commands/pony.js73
1 files changed, 73 insertions, 0 deletions
diff --git a/commands/pony.js b/commands/pony.js
new file mode 100644
index 0000000..c386107
--- /dev/null
+++ b/commands/pony.js
@@ -0,0 +1,73 @@
+const fs = require('fs');
+const { MessageActionRow, MessageButton, MessageSelectMenu, MessageEmbed } = require('discord.js');
+
+const admin = fs.readFileSync("./config/admin.txt").toString().trim();
+const list = Object.keys(JSON.parse(fs.readFileSync("./data/data.json").toString()));
+
+const getResult = require('../modules/result');
+const getEmbed = require('../modules/embed');
+const getPixel = require("../modules/pixel");
+
+const official = fs.readFileSync("./config/official.txt").toString().replace(/\r\n/g, "\n").split("\n");
+const fpserver = fs.readFileSync("./config/fpserver.txt").toString().trim();
+
+module.exports = async (interaction) => {
+ query = interaction.options.getString('query');
+ result = getResult(query);
+
+ if (result.results.length > 0 && getEmbed(result.results[0], interaction.user.id, interaction.guild ? interaction.guild.id : 0) !== false) {
+ await interaction.reply({
+ ephemeral: interaction.guild !== null,
+ embeds: [
+ new MessageEmbed()
+ .setColor('#d6dc28')
+ .setTitle(l("Results for", "Résultats pour", interaction.user.id, interaction.guild ? interaction.guild.id : 0) + " \"" + query + "\"")
+ .setDescription(l("Here are the 3 first results corresponding to your query.", "Voici les 3 premiers résultats correspondants à votre recherche.", interaction.user.id, interaction.guild ? interaction.guild.id : 0))
+ ],
+ components: [
+ new MessageActionRow()
+ .addComponents(
+ new MessageButton()
+ .setCustomId("pony.display|" + result.first[0])
+ .setLabel(result.first[0])
+ .setStyle("PRIMARY"),
+ new MessageButton()
+ .setCustomId("pony.display|" + result.first[1])
+ .setLabel(result.first[1])
+ .setStyle("PRIMARY"),
+ new MessageButton()
+ .setCustomId("pony.display|" + result.first[2])
+ .setLabel(result.first[2])
+ .setStyle("PRIMARY"),
+ new MessageButton()
+ .setCustomId("result.report|" + query)
+ .setLabel(l("Report an issue", "Signaler un problème", interaction.user.id, interaction.guild ? interaction.guild.id : 0))
+ .setStyle("DANGER")
+ )
+ ]
+ });
+ } else {
+ await interaction.reply({
+ ephemeral: interaction.guild !== null,
+ embeds: [
+ new MessageEmbed()
+ .setColor('#dc2828')
+ .setTitle(l("Results for", "Résultats pour", interaction.user.id, interaction.guild ? interaction.guild.id : 0) + " \"" + query + "\"")
+ .setDescription(l("No results found. Please try with other keywords.", "Aucun résultat trouvé. Essayez avec d'autres mots clés.", interaction.user.id, interaction.guild ? interaction.guild.id : 0))
+ ],
+ components: [
+ new MessageActionRow()
+ .addComponents(
+ new MessageButton()
+ .setCustomId("result.suggest|" + query)
+ .setLabel(l("Suggest a missing pony", "Proposer un poney manquant", interaction.user.id, interaction.guild ? interaction.guild.id : 0))
+ .setStyle("SECONDARY"),
+ new MessageButton()
+ .setCustomId("result.report|" + query)
+ .setLabel(l("Report an issue", "Signaler un problème", interaction.user.id, interaction.guild ? interaction.guild.id : 0))
+ .setStyle("DANGER")
+ )
+ ]
+ });
+ }
+} \ No newline at end of file