Ejemplo n.º 1
0
        public ActionResult Dashboard()
        {
            var userId = User.Identity.GetUserId();

            UserInfo CurrentUser = db.UserInfoes.Single(p => p.UserID == userId);

            UserMilestone UserMilestone = db.UserMilestones
                                          .Where(s => s.UserID == CurrentUser.ID && s.Date <= DateTime.Now)
                                          .OrderByDescending(s => s.Date)
                                          .First();

            var DashboardPlanvm = new DashboardViewModelPlan(UserMilestone);
            var Dashboardvm     = new DashboardViewModel {
                Plan = DashboardPlanvm
            };

            Dashboardvm.Badges = db.BadgeMilestones.OrderBy(p => p.DaysIn).AsEnumerable().Select(s =>
            {
                if (CurrentUser.StartDate.AddDays(s.DaysIn) < DateTime.Now)
                {
                    return(s.ImageActive);
                }
                else
                {
                    return(s.ImageInactive);
                }
            }).ToList();

            Dashboardvm.MoneySaved = CurrentUser.GetMoneySaved();

            Dashboardvm.Cravings = db.Cravings.Where(s => s.UserID == CurrentUser.ID).OrderByDescending(s => s.DateTime).ToList();

            Dashboardvm.CigsNotSmoked = CurrentUser.CigsNotSmoked();

            Dashboardvm.Goal = new GoalViewModel
            {
                AmountRemaining = CurrentUser.GoalPrice - Dashboardvm.MoneySaved,
                GoalItem        = CurrentUser.GoalItem
            };

            var healthFacts = db.HealthFactMilestones.AsEnumerable().Select(x => new HeathFactViewModel
            {
                DaysIn   = TimeSpan.FromDays((double)x.DaysIn),
                FactBody = x.FactBody,
                IsPassed = DateTime.Now - CurrentUser.StartDate > TimeSpan.FromDays((double)x.DaysIn)
            }).OrderBy(x => x.DaysIn);

            Dashboardvm.HealthFacts = healthFacts.ToList();



            return(View(Dashboardvm));
        }
Ejemplo n.º 2
0
        public ActionResult ShowCurrentMilestone()
        {
            var userId = User.Identity.GetUserId();

            UserInfo CurrentUser = db.UserInfoes.Single(p => p.UserID == userId);

            UserMilestone UserMilestone = db.UserMilestones
                                          .Where(s => s.UserID == CurrentUser.ID && s.Date <= DateTime.Now)
                                          .OrderByDescending(s => s.Date)
                                          .First();



            var DashboardPlanvm = new DashboardViewModelPlan(UserMilestone);
            var Dashboardvm     = new DashboardViewModel {
                Plan = DashboardPlanvm
            };



            return(View(Dashboardvm));
        }