From 3f6bd7478992bf6f7880e8d9af7c0980060af2f4 Mon Sep 17 00:00:00 2001 From: Daniel Bulant Date: Sat, 16 Oct 2021 19:37:50 +0200 Subject: [PATCH] =?UTF-8?q?oprava=20z=C3=ADsk=C3=A1v=C3=A1n=C3=AD=20t?= =?UTF-8?q?=C5=99=C3=ADdy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- commands/ssps/rozvrh.js | 15 +++------------ utils/ssps-server.js | 17 ++++++++++++++++- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/commands/ssps/rozvrh.js b/commands/ssps/rozvrh.js index b99ba3e..08d681b 100644 --- a/commands/ssps/rozvrh.js +++ b/commands/ssps/rozvrh.js @@ -19,24 +19,15 @@ module.exports = class rozvrh extends commando.Command { prompt: "Jakou třídu chcete zvolit?", isEmpty(val, msg) { if(val) return false; - if(!client.guilds.resolve(ssps.server)) return true; - console.log("Finding roles"); - return !Object.entries(ssps.roles).find(([id, name]) => - client.guilds.resolve(ssps.server).roles.valueOf().has(id) - ); + return !ssps.getClass(msg.author); }, validate(val, msg) { if(/^[1-4]\.?[ABCKGL]$/i.test(val)) return true; - if(!client.guilds.resolve(ssps.server)) return false; - return Object.entries(ssps.roles).find(([id, name]) => - client.guilds.resolve(ssps.server).roles.valueOf().has(id) - ); + return !!ssps.getClass(msg.author); }, parse(val, msg) { if(val) return val; - return Object.entries(ssps.roles).find(([id, name]) => - client.guilds.resolve(ssps.server).roles.valueOf().has(id) - )[1]; + return ssps.getClass(msg.author); } }] }); diff --git a/utils/ssps-server.js b/utils/ssps-server.js index 899716d..436bd22 100644 --- a/utils/ssps-server.js +++ b/utils/ssps-server.js @@ -22,7 +22,22 @@ const roles = { "887339044961406996": "4L" }; +/** + * + * @param {import("discord.js").User} user + */ +function getClass(user) { + if(!user.client.guilds.resolve(server)) return null; + if(!user.client.guilds.resolve(server).member(msg.author)) return null; + return Object.entries(roles).find(([id, name]) => + user.client.guilds.resolve(server).member(msg.author).roles.valueOf().has(id) + ); +} + +const server = "882560404167995443"; + module.exports = { roles, - server: "882560404167995443" + server, + getClass } \ No newline at end of file