add permission checks to everything user-facing

This commit is contained in:
derpystuff 2023-06-15 12:09:40 +02:00
parent 9e9c53e1bd
commit 61274d6be5
66 changed files with 276 additions and 27 deletions

View file

@ -2,12 +2,12 @@ const { Constants } = require("detritus-client");
const { perspective } = require("../../../labscore/api");
const { format } = require("../../../labscore/utils/ansi");
const { createEmbed } = require("../../../labscore/utils/embed");
const Permissions = Constants.Permissions;
const { icon, codeblock, iconPill } = require("../../../labscore/utils/markdown");
const { editOrReply } = require("../../../labscore/utils/message");
const { STATICS } = require("../../../labscore/utils/statics");
const { Permissions } = require("detritus-client/lib/constants");
function getPerspectiveColor(score) {
if (score >= 0.9) return "m"
@ -45,6 +45,7 @@ module.exports = {
limit: 1,
duration: 5000
},
permissionsClient: [Permissions.EMBED_LINKS, Permissions.SEND_MESSAGES, Permissions.USE_EXTERNAL_EMOJIS, Permissions.READ_MESSAGE_HISTORY],
run: async (context, args) => {
await context.triggerTyping();

View file

@ -1,5 +1,4 @@
const { Constants } = require("detritus-client");
const Permissions = Constants.Permissions;
const { Permissions } = require("detritus-client/lib/constants");
const { icon } = require("../../../labscore/utils/markdown");
@ -19,9 +18,8 @@ module.exports = {
{default: 20, name: 'amount', type: 'integer', help: "Amount of messages to be checked (1-20)"},
{default: true, name: 'case', type: 'bool', help: "If provided, should the search query be case sensitive"},
],
permissionsClient: [Permissions.MANAGE_MESSAGES],
permissionsClient: [Permissions.EMBED_LINKS, Permissions.SEND_MESSAGES, Permissions.USE_EXTERNAL_EMOJIS, Permissions.MANAGE_MESSAGES, Permissions.READ_MESSAGE_HISTORY],
permissions: [Permissions.MANAGE_MESSAGES],
onPermissionsFailClient: (context) => context.editOrReply(`${icon("failiure_simple")} ${context.message.author.mention}, the bot needs the \`Manage Messages\` permission to run this command.`),
onPermissionsFail: (context) => context.editOrReply(`${icon("failiure_simple")} ${context.message.author.mention}, you are lacking the permission \`Manage Messages\`.`),
ratelimit: {
type: 'guild',