From 094b326d5ddaf338a7bc1a5d1210cae958cba814 Mon Sep 17 00:00:00 2001 From: Minteck Date: Fri, 4 Feb 2022 14:38:15 +0100 Subject: Version 1.0 (release) --- commands/pony.js | 94 ++++++++++++++++++++++++++++++++++++++++++------------ config/version.txt | 2 +- update/parse.js | 2 +- 3 files changed, 75 insertions(+), 23 deletions(-) diff --git a/commands/pony.js b/commands/pony.js index c386107..f15e732 100644 --- a/commands/pony.js +++ b/commands/pony.js @@ -16,36 +16,88 @@ module.exports = async (interaction) => { 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() + if (result.results[0].toLowerCase().trim() === query.toLowerCase().trim()) { + keys = [null, result.results[0]]; + if (interaction.guild) { + row = new MessageActionRow() .addComponents( new MessageButton() - .setCustomId("pony.display|" + result.first[0]) - .setLabel(result.first[0]) + .setCustomId("pony.public|" + keys[1]) + .setLabel(l("Show to everypony", "Afficher à tous", interaction.user.id, interaction.guild ? interaction.guild.id : 0)) .setStyle("PRIMARY"), new MessageButton() - .setCustomId("pony.display|" + result.first[1]) - .setLabel(result.first[1]) - .setStyle("PRIMARY"), + .setLabel(l("Read More", "Lire plus", interaction.user.id, interaction.guild ? interaction.guild.id : 0)) + .setStyle("LINK") + .setURL("https://mlp.fandom.com/wiki/" + encodeURI(keys[1])), new MessageButton() - .setCustomId("pony.display|" + result.first[2]) - .setLabel(result.first[2]) - .setStyle("PRIMARY"), + .setCustomId("pony.pixel|" + keys[1]) + .setLabel("Pixel Art") + .setDisabled(!fs.existsSync("./pixel/" + keys[1].toLowerCase())) + .setStyle("SECONDARY"), new MessageButton() - .setCustomId("result.report|" + query) + .setCustomId("result.report|" + keys[1]) .setLabel(l("Report an issue", "Signaler un problème", interaction.user.id, interaction.guild ? interaction.guild.id : 0)) .setStyle("DANGER") ) - ] - }); + } else { + row = new MessageActionRow() + .addComponents( + new MessageButton() + .setLabel(l("Read More", "Lire plus", interaction.user.id, interaction.guild ? interaction.guild.id : 0)) + .setStyle("LINK") + .setURL("https://mlp.fandom.com/wiki/" + encodeURI(keys[1])), + new MessageButton() + .setCustomId("pony.pixel|" + keys[1]) + .setLabel("Pixel Art") + .setDisabled(!fs.existsSync("./pixel/" + keys[1].toLowerCase())) + .setStyle("SECONDARY"), + new MessageButton() + .setCustomId("result.report|" + keys[1]) + .setLabel(l("Report an issue", "Signaler un problème", interaction.user.id, interaction.guild ? interaction.guild.id : 0)) + .setStyle("DANGER") + ) + } + await interaction.reply({ + ephemeral: interaction.guild !== null, + embeds: [ + getEmbed(keys[1], interaction.user.id, interaction.guild ? interaction.guild.id : 0, false, interaction.user) + ], + components: [ + row + ] + }); + } else { + 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, diff --git a/config/version.txt b/config/version.txt index 7717884..3f11ef6 100644 --- a/config/version.txt +++ b/config/version.txt @@ -1 +1 @@ -1.0.26 \ No newline at end of file +1.0.27 \ No newline at end of file diff --git a/update/parse.js b/update/parse.js index 5be5ae5..0b2baa9 100644 --- a/update/parse.js +++ b/update/parse.js @@ -74,7 +74,7 @@ let ponies = {}; box.residence/*.replace(/\[\[(.*)_(.*)\]\]|\[\[(.*)\|(.*)\]\]|\[\[(.*)\]\]/gm, "$2$4$5")*/.replace(//g, "").trim().replace(/\|/gm, "_").replace(/<( ||(|| )\/)( ||(|| )\/)(b|B)(r|R)( ||(|| )\/)( ||(|| )\/)>/gm, "|").replace(/( \|| \| | \| )/gm, "|").split("|").forEach((e) => { residences.push(e.trim().replace(/[\[\]]/gm, "").replace(/<(.*)>/gm, "").replace(/([a-zA-Z0-9 \-_,.'"]*)_([a-zA-Z0-9 \-_,.'"]*)/gm, "$2")); }) - data.residence = residences; + data.residence = residences.replaceAll("Locations#", ""); } if ((typeof box.name2 !== "undefined" || typeof box.name3 !== "undefined" || typeof box.name4 !== "undefined" || typeof box.name5 !== "undefined" || typeof box.coat !== "undefined" || typeof box.occupation !== "undefined" || typeof box.residence !== "undefined") && typeof box.sex !== "undefined") ponies[title] = data; -- cgit