Example #1
0
        public async Task Ban([Summary("The user you want to ban. (@ them)")] SocketUser bUser, [Summary("The reason you're banning them.")][Remainder] string reason)
        {
            var requestingUser = (SocketGuildUser)Context.User;
            var bannedUser     = (IGuildUser)bUser;
            var reportChannel  = (ISocketMessageChannel)Context.Guild.GetChannel(514112072326578207);

            if (UtilService.IsOfficer(requestingUser.Roles))
            {
                await bannedUser.BanAsync(2, reason);
                await ReplyAsync($"{bannedUser.Username} with ID {bUser.Id} has been banned from {Context.Guild.Name}");

                await reportChannel.SendMessageAsync("", false, UtilService.BanReporter(bUser, Context.User, (SocketChannel)Context.Channel, reason));

                LoggingService.Log("admin", LogSeverity.Info, $"{Context.User.Username} has banned {bannedUser.Username}");
                return;
            }
            else
            {
                await ReplyAsync("You do not have the required role to do that.");

                LoggingService.Log("admin", LogSeverity.Warning, $"{Context.User.Username} Requested a command without permision.");
            }
        }