Ejemplo n.º 1
0
        public ActionResult Edit(EditUserModel model)
        {
            var userByEmail = UnitOfWork.Users.GetByEmail(model.Email);
            var userByLogin = UnitOfWork.Users.GetByLogin(model.Login);

            if (userByEmail != null) ModelState.AddModelError("Email", string.Format("Email {0} already in use.", model.Email));
            if (userByLogin != null) ModelState.AddModelError("Login", string.Format("Email {0} already in use.", model.Login));

            if (!ModelState.IsValid) return View(model);

            var user = model.Id != 0 ? UnitOfWork.Users.GetById(model.Id) : new User
            {
                CreatedDate = DateTime.Now,
                UpdatedDate = DateTime.Now
            };

            user.Login = model.Login;
            user.Password = BCryptHelper.HashPassword(model.Password, BCryptHelper.GenerateSalt(12));
            user.Email = model.Email;
            user.FirstName = model.FirstName;
            user.LastName = model.LastName;
            user.Description = model.Description;
            user.Karma = model.Karma;

            if(model.Id == 0) UnitOfWork.Users.Add(user);

            UnitOfWork.SaveChanges();

            return RedirectToAction("Index");
        }
Ejemplo n.º 2
0
        public ActionResult Edit(int? id = null)
        {
            var user = id.HasValue ? UnitOfWork.Users.GetById(id.Value) : new User();

            var model = new EditUserModel
            {
                Id = user.Id,
                Login = user.Login,
                Password = user.Password,
                Email = user.Email,
                FirstName = user.FirstName,
                LastName = user.LastName,
                Description = user.Description,
                Karma = user.Karma
            };

            return View(model);
        }