summary refs log tree commit diff
path: root/dist/util/Permissions.js
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-03-04 21:59:49 +0100
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-03-04 21:59:49 +0100
commit514afaca697ae5f9a02e91342c0434fe9eeffe74 (patch)
treed0b4ac2751d0903c097aa0374820dd17222ca9d2 /dist/util/Permissions.js
parent:sparkles: AuditLog (diff)
downloadserver-514afaca697ae5f9a02e91342c0434fe9eeffe74.tar.xz
:sparkles: AuditLog
Diffstat (limited to 'dist/util/Permissions.js')
-rw-r--r--dist/util/Permissions.js6
1 files changed, 6 insertions, 0 deletions
diff --git a/dist/util/Permissions.js b/dist/util/Permissions.js

index cbf2e67c..99111331 100644 --- a/dist/util/Permissions.js +++ b/dist/util/Permissions.js
@@ -7,6 +7,7 @@ const Member_1 = require("../models/Member"); const Channel_1 = require("../models/Channel"); const Role_1 = require("../models/Role"); const BitField_1 = require("./BitField"); +const Guild_1 = require("../models/Guild"); const CUSTOM_PERMISSION_OFFSET = 1n << 48n; // 16 free custom permission bits, and 16 for discord to add new ones class Permissions extends BitField_1.BitField { any(permission, checkAdmin = true) { @@ -87,6 +88,11 @@ Permissions.FLAGS = { }; async function getPermission(user_id, guild_id, channel_id, cache) { var { channel, member } = cache || {}; + const guild = await Guild_1.GuildModel.findOne({ id: guild_id }, { owner_id: true }).exec(); + if (!guild) + throw new Error("Guild not found"); + if (guild.owner_id === user_id) + return new Permissions("ADMINISTRATOR"); member = await Member_1.MemberModel.findOne({ guild_id, id: user_id }, "roles").exec(); if (!member) throw new Error("Member not found");