Example #1
0
        public IActionResult EditThisUser(int userId, UserPageWrapper fromForm)
        {
            RegisterUser fromLogin = HttpContext.Session.GetObjectFromJson <RegisterUser>("LoggedInUser");

            RegisterUser User = dbContext.Users.FirstOrDefault(r => r.UserId == fromLogin.UserId);

            User.FirstName = fromForm.RegisterUser.FirstName;
            User.LastName  = fromForm.RegisterUser.LastName;
            User.UserId    = userId;
            User.Email     = fromForm.RegisterUser.Email;

            if (dbContext.Users.Any(u => u.Email == fromForm.RegisterUser.Email))
            {
                ModelState.AddModelError("Email", "Email already in use!");
                return(View("EditUser", User));
            }
            dbContext.Update(User);
            dbContext.Entry(User).Property("CreatedAt").IsModified = false;
            dbContext.Entry(User).Property("Password").IsModified  = false;
            dbContext.SaveChanges();

            HttpContext.Session.SetObjectAsJson("LoggedInUser", User);

            return(RedirectToAction("Main"));
        }
Example #2
0
        public IActionResult UserDetail(int userId)
        {
            string userEmail = HttpContext.Session.GetString("logged_in_user");

            if (userEmail == null)
            {
                return(RedirectToAction("Index"));
            }

            User loggedInUser = _context.Users
                                .Where(u => u.Email == userEmail)
                                .Include(u => u.Messages)
                                .SingleOrDefault();

            User detailUser = _context.Users
                              .Where(u => u.UserId == userId)
                              .Include(u => u.Messages)
                              .ThenInclude(m => m.Thread)
                              .SingleOrDefault();

            int totalMessages = detailUser.Messages.Count;

            detailUser.Messages = detailUser.Messages.OrderByDescending(m => m.CreatedAt).Take(4).ToList();

            UserPageWrapper wrapper = new UserPageWrapper()
            {
                LoggedInUser            = loggedInUser,
                DetailUser              = detailUser,
                TotalPostsForDetailUser = totalMessages
            };

            return(View("userpage", wrapper));
        }
Example #3
0
        public IActionResult EditUser(int userId)
        {
            RegisterUser fromLogin = HttpContext.Session.GetObjectFromJson <RegisterUser>("LoggedInUser");

            if (fromLogin == null)
            {
                return(RedirectToAction("Index"));
            }
            RegisterUser ToEdit = dbContext.Users
                                  .Include(u => u.Recipes)
                                  .FirstOrDefault(u => u.UserId == userId);
            UserPageWrapper UserPageWrapper = new UserPageWrapper();

            UserPageWrapper.RegisterUser = ToEdit;
            List <Recipe> MyRecipes = new List <Recipe>();

            MyRecipes = dbContext.Recipes.Where(r => r.CreatorId == ToEdit.UserId).ToList();

            UserPageWrapper.MyRecipes = MyRecipes;

            return(View(UserPageWrapper));
        }