Пример #1
0
        public async Task <IActionResult> Create(AppUserForReturnDto model)
        {
            if (!ModelState.IsValid)
            {
                return(View("CreateEdit", model));
            }

            var appUser = _mapper.Map <AppUser>(model);

            appUser.UserName = appUser.EmailAddress;

            var result = await _userManager.CreateAsync(appUser, model.Password);

            if (result.Succeeded)
            {
                TempData["clientMessage"] =
                    Helper.PrepareClientMessage("User created successfully", DataEnum.ClientMessageType.Success);
                return(RedirectToAction("Index"));
            }
            else
            {
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError("", error.Description);
                }

                return(View("CreateEdit", model));
            }
        }
Пример #2
0
        public async Task <IActionResult> Edit(AppUserForReturnDto model)
        {
            var user = _userManager.Users.FirstOrDefault(t => t.Id == model.Id);

            if (user == null)
            {
                TempData["clientMessage"] =
                    Helper.PrepareClientMessage("User id is not correct", DataEnum.ClientMessageType.Error);
                return(RedirectToAction("Index"));
            }

            if (!string.IsNullOrWhiteSpace(model.Password))
            {
                var passToken = await _userManager.GeneratePasswordResetTokenAsync(user);

                var result = await _userManager.ResetPasswordAsync(user, passToken, model.Password);

                if (!result.Succeeded)
                {
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError("", error.Description);
                    }

                    return(View("CreateEdit", model));
                }
            }

            var updateResult = await _userManager.UpdateAsync(_mapper.Map(model, user));

            if (updateResult.Succeeded)
            {
                TempData["clientMessage"] =
                    Helper.PrepareClientMessage("User updated successfully", DataEnum.ClientMessageType.Success);
                return(RedirectToAction("Index"));
            }

            foreach (var error in updateResult.Errors)
            {
                ModelState.AddModelError("", error.Description);
            }

            return(View("CreateEdit", model));
        }
Пример #3
0
        public IActionResult Create()
        {
            var user = new AppUserForReturnDto();

            return(View("CreateEdit", user));
        }