public async Task <IActionResult> OnGetAsync(Guid?id) { if (id == null) { return(NotFound()); } UserGoals = await _context.UserGoals.FirstOrDefaultAsync(m => m.GoalId == id); if (UserGoals == null) { return(NotFound()); } return(Page()); }
public async Task <IActionResult> OnPostAsync(Guid?id) { if (id == null) { return(NotFound()); } UserGoals = await _context.UserGoals.FindAsync(id); if (UserGoals != null) { _context.UserGoals.Remove(UserGoals); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } var adjustedCals = Input.BaseCalorieTarget + Input.CalAdjustment; user.DailyTargetCalories = adjustedCals; _context.Users.Update(user); var userGoal = await _context.UserGoals .Where(u => u.Id == user.Id) .FirstOrDefaultAsync(); if (userGoal == null) { userGoal = new UserGoals { Id = user.Id, BaseCalorieTarget = Input.BaseCalorieTarget, CalAdjustment = Input.CalAdjustment, OverallGoal = Input.Goal, Pace = Input.Pace, CarbPercent = Input.CarbPercent, FatPercent = Input.FatPercent, ProteinPercent = Input.ProteinPercent }; _context.UserGoals.Add(userGoal); await _context.SaveChangesAsync(); await _signInManager.RefreshSignInAsync(user); StatusMessage = "Your goals have been updated"; return(RedirectToPage()); } if (Input.BaseCalorieTarget != userGoal.BaseCalorieTarget) { userGoal.BaseCalorieTarget = Input.BaseCalorieTarget; } if (Input.CalAdjustment != userGoal.CalAdjustment) { userGoal.CalAdjustment = Input.CalAdjustment; } if (Input.Goal != userGoal.OverallGoal) { userGoal.OverallGoal = Input.Goal; } if (Input.Pace != userGoal.Pace) { userGoal.Pace = Input.Pace; } if (Input.CarbPercent != userGoal.CarbPercent) { userGoal.CarbPercent = Input.CarbPercent; } if (Input.FatPercent != userGoal.FatPercent) { userGoal.FatPercent = Input.FatPercent; } if (Input.ProteinPercent != userGoal.ProteinPercent) { userGoal.ProteinPercent = Input.ProteinPercent; } _context.UserGoals.Update(userGoal); await _context.SaveChangesAsync(); await _signInManager.RefreshSignInAsync(user); StatusMessage = "Your goals have been updated"; return(RedirectToPage()); }