From cb4cc8601f5ba091b3587b527831b40f24f1e6be Mon Sep 17 00:00:00 2001 From: Sean Stoves Date: Wed, 5 Aug 2020 17:58:57 -0400 Subject: [PATCH] Adding Admin/User for default role --- .../Discord/PreConditions/CheckCommandPerm.cs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/ChaosBot/Discord/PreConditions/CheckCommandPerm.cs b/ChaosBot/Discord/PreConditions/CheckCommandPerm.cs index 0c2929e..82afcdd 100644 --- a/ChaosBot/Discord/PreConditions/CheckCommandPerm.cs +++ b/ChaosBot/Discord/PreConditions/CheckCommandPerm.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Reflection; using System.Threading.Tasks; using ChaosBot.Models; using ChaosBot.Repositories; @@ -13,6 +14,8 @@ namespace ChaosBot.Discord.PreConditions public class CheckCommandPerm : PreconditionAttribute { private static ILogger _logger = Program.Logger; + private readonly string _defaultRole; + public CheckCommandPerm(string defaultRole) => _defaultRole = defaultRole; public override Task CheckPermissionsAsync(ICommandContext context, CommandInfo command, IServiceProvider services) { @@ -65,7 +68,18 @@ namespace ChaosBot.Discord.PreConditions } else { - _logger.Info("CheckCommandperm.CheckPermissionsAsync|commandPermissions: Null Value"); + if (_defaultRole == "Admin") + { + if(gUser.GuildPermissions.Administrator) + return Task.FromResult(PreconditionResult.FromSuccess()); + } + else if ( _defaultRole == "User") + { + if(gUser.GuildPermissions.SendMessages) + return Task.FromResult(PreconditionResult.FromSuccess()); + } + else + _logger.Info($"CheckCommandperm.CheckPermissionsAsync|commandPermissions: No Default"); } // Permission denied