예제 #1
0
        // GET: RegisteredUsers/Edit/5
        public ActionResult Edit(int id)
        {
            var viewModel = new RegisteredUserViewModel();
            var regUser   = _context.RegisteredUsers.Include(r => r.HouseHold).Include(r => r.HouseHold.Address).FirstOrDefault(r => r.Id == id);

            viewModel.RegisteredUser = regUser;
            return(View(viewModel));
        }
예제 #2
0
        public ActionResult Create(RegisteredUserViewModel viewModel)
        {
            var userId         = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
            var registeredUser = viewModel.RegisteredUser;

            registeredUser.IdentityUserId = userId;
            _context.RegisteredUsers.Add(viewModel.RegisteredUser);
            _context.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #3
0
        // GET: RegisteredUsers
        public ActionResult Index()
        {
            var viewModel      = new RegisteredUserViewModel();
            var userId         = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
            var registeredUser = _context.RegisteredUsers.Where(r => r.IdentityUserId == userId).ToList();

            if (registeredUser == null)
            {
                return(RedirectToAction("Create"));
            }

            return(View(registeredUser));
        }
예제 #4
0
        public ViewResult ListRegisteredUsers(int page = 1)
        {
            RegisteredUserViewModel model = new RegisteredUserViewModel
            {
                RegisteredUsers = RegisteredUserRepo.RegisteredUsers
                                  .OrderBy(p => p.RegisteredUserId)
                                  .Skip((page - 1) * PageSize)
                                  .Take(PageSize),
                PagingInfo = new PagingInfo
                {
                    CurrentPage  = page,
                    ItemsPerPage = PageSize,
                    TotalItems   = RegisteredUserRepo.RegisteredUsers.Count()
                }
            };

            return(View(model));
        }
예제 #5
0
        public void Can_Send_Pagination_View_Model()
        {
            // Arrange
            List <RegisteredUser> tempList = new List <RegisteredUser>()
            {
                new RegisteredUser {
                    RegisteredUserId = 1, Username = "******"
                },
                new RegisteredUser {
                    RegisteredUserId = 2, Username = "******"
                },
                new RegisteredUser {
                    RegisteredUserId = 3, Username = "******"
                },
                new RegisteredUser {
                    RegisteredUserId = 4, Username = "******"
                },
                new RegisteredUser {
                    RegisteredUserId = 5, Username = "******"
                }
            };
            MockRegisteredUserRepo tempRepo = new MockRegisteredUserRepo(tempList);


            MockFruitBasketRepo temp3 = new MockFruitBasketRepo();

            // Arrange
            HomeController controller = new HomeController(tempRepo, temp3);

            controller.PageSize = 3;

            // Act
            RegisteredUserViewModel result = (RegisteredUserViewModel)controller.ListRegisteredUsers(2).Model;

            // Assert
            PagingInfo pageInfo = result.PagingInfo;

            Assert.AreEqual(pageInfo.CurrentPage, 2);
            Assert.AreEqual(pageInfo.ItemsPerPage, 3);
            Assert.AreEqual(pageInfo.TotalItems, 5);
            Assert.AreEqual(pageInfo.TotalPages, 2);
        }
예제 #6
0
 public IActionResult LoginUserForm(RegisteredUserViewModel model)
 {
     if (ModelState.IsValid)
     {
         user RegisteredUser = _context.users.SingleOrDefault(ul => ul.email == model.email);
         if (RegisteredUser != null)
         {
             if (model.email != null && model.password != null)
             {
                 var Hasher = new PasswordHasher <RegisteredUserViewModel>();
                 if (0 != Hasher.VerifyHashedPassword(model, RegisteredUser.password, model.password))
                 {
                     HttpContext.Session.SetInt32("userid", RegisteredUser.userid);
                     return(RedirectToAction("Dashboard", "Home"));
                 }
             }
         }
     }
     TempData["Error"] = "☝🏻 Please verify that you've correctly entered your email and resubmit";
     return(View("Register"));
 }
예제 #7
0
        public ActionResult Edit(int id, RegisteredUserViewModel viewModel)
        {
            //try to add try and catch to every method
            var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier);

            viewModel.RegisteredUser.IdentityUserId = userId;
            var regUserDb = _context.RegisteredUsers.Include(r => r.HouseHold).Include(r => r.HouseHold.Address).FirstOrDefault(r => r.Id == id);

            regUserDb.FirstName                 = viewModel.RegisteredUser.FirstName;
            regUserDb.LastName                  = viewModel.RegisteredUser.LastName;
            regUserDb.DOB                       = viewModel.RegisteredUser.DOB;
            regUserDb.PreferredStore            = viewModel.RegisteredUser.PreferredStore;
            regUserDb.DisplayPublicly           = viewModel.RegisteredUser.DisplayPublicly;
            regUserDb.HouseHold.Address.Street  = viewModel.RegisteredUser.HouseHold.Address.Street;
            regUserDb.HouseHold.Address.City    = viewModel.RegisteredUser.HouseHold.Address.City;
            regUserDb.HouseHold.Address.State   = viewModel.RegisteredUser.HouseHold.Address.State;
            regUserDb.HouseHold.Address.ZipCode = viewModel.RegisteredUser.HouseHold.Address.ZipCode;

            _context.SaveChanges();
            return(RedirectToAction("Index"));
        }