コード例 #1
0
        public async Task DoCheckUser(string id)
        {
            if (await _permManager.IsAllowedAsync(Types.PermissionType.ManagePermissions, Context.User))
            {
                using (var dbContext = new BotDbContext(_config))
                {
                    var channel = await Context.User.GetOrCreateDMChannelAsync();

                    var user = await dbContext.Users.FirstOrDefaultAsync(u => u.DiscordUserId == Context.User.Id.ToString());

                    if (user == null)
                    {
                        await channel.SendMessageAsync("User not found");
                    }
                    else
                    {
                        string permissions = "Permissions: ";
                        var    perms       = await _permManager.GetAllPermissionsToAUserAsync(id, dbContext);

                        if (perms.Count() > 0)
                        {
                            foreach (var perm in perms)
                            {
                                permissions += perm.Name + ";";
                            }
                            await channel.SendMessageAsync(permissions);
                        }
                        else
                        {
                            await channel.SendMessageAsync("No permissions found.");
                        }
                    }
                }
            }
            else
            {
                await ReplyAsync(AppSettings.PERMISSION_DENIED_RESPONSE);
            }
        }