Пример #1
0
        //public ActionResult Achievements()
        //{
        //    var user = db.Users.Include("WorkoutLogs").Where(e => e.UserName == HttpContext.User.Identity.Name).FirstOrDefault();

        //    return RedirectToAction("Achievements", new { id = user.Id });
        //    //var profileAchievements = new List<ProfileAchievement>();

        //    //foreach (var achievement in db.Achievements)
        //    //{
        //    //    var likeLogs = user.WorkoutLogs.Where(e => e.WorkoutRefId == achievement.WorkoutRefId);

        //    //    var profileAchievement = new ProfileAchievement();
        //    //    profileAchievement.Achievement = achievement;
        //    //    var soFar = likeLogs.Sum(e => e.Qty);
        //    //    profileAchievement.MyQty = Math.Min(likeLogs.Sum(e => e.Qty), achievement.Qty);

        //    //    if (likeLogs.Sum(e => e.Qty) >= achievement.Qty)
        //    //    {
        //    //        profileAchievement.Unlocked = true;
        //    //    }

        //    //    profileAchievements.Add(profileAchievement);
        //    //}

        //    //return View(profileAchievements);
        //}

        public ActionResult Achievements(int?id)
        {
            var myAchievements = new ProfileAchievementHeader();

            if (id.HasValue)
            {
                myAchievements.User = db.Users.Include("WorkoutLogs").Where(e => e.Id == id).FirstOrDefault();
            }
            else
            {
                myAchievements.User = db.Users.Include("WorkoutLogs").Where(e => e.UserName == HttpContext.User.Identity.Name).FirstOrDefault();
            }

            myAchievements.ProfileAchievments = new List <ProfileAchievement>();

            foreach (var achievement in db.Achievements)
            {
                var likeLogs = myAchievements.User.WorkoutLogs.Where(e => e.WorkoutRefId == achievement.WorkoutRefId);

                var profileAchievement = new ProfileAchievement();
                profileAchievement.Achievement = achievement;
                var soFar = likeLogs.Sum(e => e.Qty);
                profileAchievement.MyQty = Math.Min(likeLogs.Sum(e => e.Qty), achievement.Qty);

                if (likeLogs.Sum(e => e.Qty) >= achievement.Qty)
                {
                    profileAchievement.Unlocked = true;
                }

                myAchievements.ProfileAchievments.Add(profileAchievement);
            }

            return(View(myAchievements));
        }
 // Setup of the prefab
 public void Setup(Achievement Achiev, ProfileAchievement ProfAch)
 {
     this.AchText.text = Achiev.Information;
     this._UserId      = Achiev.UserId.ToString();
     this._ProfileAch  = ProfAch;
     this._Achievement = Achiev;
     this.ButtonComponent.onClick.AddListener(this.PopUp);
 }
Пример #3
0
 // Awake will get the scripts for the transforms that was specified in the Unity control panel
 void Awake()
 {
     this._AchScript   = transform.FindChild("AchievementBox").GetComponent <ProfileAchievement> ();
     this._BadgeScript = transform.FindChild("BadgeBox").GetComponent <ProfileBadge> ();
     this._InfScript   = transform.FindChild("ProfileInfo").GetComponent <ProfileInfo> ();
 }