public IActionResult Index()
        {
            string username = this.User.Identity.Name;
            MyAchievementsViewModel achievements = this.achievementsService.GetAllAchievements(username);

            return(View(achievements));
        }
        public MyAchievementsViewModel GetAllAchievements(string username)
        {
            User user = this.Context
                        .Users
                        .FirstOrDefault(u => u.UserName == username);

            if (user == null)
            {
                return(new MyAchievementsViewModel());
            }

            List <AchievementViewModel> timesAchivements = this
                                                           .Context
                                                           .Achievements
                                                           .Where(c => c.Category == "Time").Select(a => new AchievementViewModel()
            {
                Category    = a.Category,
                Description = a.Description,
                Id          = a.Id,
                Name        = a.Name,
            }).ToList();

            List <AchievementViewModel> competitionAchivements = this
                                                                 .Context
                                                                 .Achievements
                                                                 .Where(c => c.Category == "Competition").Select(a => new AchievementViewModel()
            {
                Category    = a.Category,
                Description = a.Description,
                Id          = a.Id,
                Name        = a.Name,
            }).ToList();

            List <AchievementViewModel> usersAchievements = user.Achievements.Select(a => new AchievementViewModel()
            {
                Category    = a.Achievement.Category,
                Description = a.Achievement.Description,
                Id          = a.Achievement.Id,
                Name        = a.Achievement.Name,
            }).ToList();

            MyAchievementsViewModel result = new MyAchievementsViewModel()
            {
                CompetitionAchivements = competitionAchivements,
                TimesAchivements       = timesAchivements,
                UserAchievements       = usersAchievements
            };

            return(result);
        }