public async Task <IActionResult> GetAllCharactersByUser([FromBody] RealmTypeModel model)
        {
            var user = await TokenHelper.GetUser(User, _userManager);

            if (user == null)
            {
                return(RequestHandler.Unauthorized());
            }

            var context    = _contextService.GetCharacterContext(model.RealmType);
            var characters = await(
                from character in context.Characters
                where character.Account == user.AccountId
                join guildMembers in context.GuildMembers on character.Id equals guildMembers.CharacterId into joinTable1
                from guildMembers in joinTable1.DefaultIfEmpty()
                join guild in context.Guilds on guildMembers.GuildId equals guild.Id into joinTable2
                from guild in joinTable2.DefaultIfEmpty()
                select new Character(character)
            {
                Guild           = guild,
                CharacterBanned = character.CharacterBanned
            }
                ).ToListAsync();

            return(Ok(characters));
        }
        public async Task <IActionResult> GetOnlinePlayers([FromBody] RealmTypeModel model)
        {
            var context = _contextService.GetCharacterContext(model.RealmType);

            var result = await context.Characters
                         .Where(x => x.IsOnline())
                         .Select(x =>
                                 new PlayerModel
            {
                Name   = x.Name,
                Race   = x.Race,
                Class  = x.Class,
                Level  = x.Level,
                Zone   = x.Zone,
                Gender = x.Gender
            }).ToListAsync();

            return(Ok(result));
        }
        public async Task <IActionResult> GetUnstuckLocationsForRealm([FromBody] RealmTypeModel model)
        {
            var locations = await _websiteContext.UnstuckLocations.Where(x => x.RealmId == (int)model.RealmType).ToListAsync();

            return(Ok(locations));
        }