// // GET: /Manage/ChangePhoneNumber public async Task <IActionResult> ChangePhoneNumber() { var user = await GetCurrentUserAsync(); if (user == null) { return(View("Error")); } var model = new ChangePhoneNumberViewModel { OldPhoneNumber = user.PhoneNumber }; return(View(model)); }
public async Task <IActionResult> ChangePhoneNumber([FromRoute] string id, ChangePhoneNumberViewModel model) { if (!this.ModelState.IsValid) { return(this.View(model)); } string gamingHallId = this.service.GetHallId(id); await this.service.ChangePhoneNumberAsync(id, model.PhoneNumber); this.TempData["Message"] = "Employee Phone number successfully updated!"; return(this.Redirect("/Employees/AllEmployees/" + gamingHallId)); }
public ActionResult ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } String user; user = HttpContext.User.Identity.GetUserName(); AppUser f = db.Users.FirstOrDefault(x => x.UserName == user); f.PhoneNumber = model.NewPhoneNumber; db.SaveChanges(); return(RedirectToAction("Index", "Accounts")); }
public async Task <IActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (ModelState.IsValid) { var userWithPhoneNumber = await _userManager.FindUserByPhoneNumber(model.PhoneNumber); if (userWithPhoneNumber != null && userWithPhoneNumber.EmailConfirmed) { ModelState.AddModelError(nameof(ChangePhoneNumberViewModel.PhoneNumber), "This phone number is already taken"); } if (ModelState.ErrorCount == 0) { if (!string.IsNullOrWhiteSpace(model.Code)) { ViewData["SmsSent"] = true; var result = await _userManager.ConfirmPhoneNumber(model.UserId, model.Code); if (result) { return(Redirect("/profile")); } ModelState.AddModelError(nameof(ChangePhoneNumberViewModel.Code), "Invalid code."); return(View(model)); } var user = await _userManager.FindUserById(model.UserId); var token = await _userManager.GenerateChangePhoneNumberToken(model.UserId, model.PhoneNumber); var body = $"Confirmation code: {token}"; var status = await _smsService.SendAsync(model.PhoneNumber, body); if (status) { user.PhoneNumber = model.PhoneNumber; await _userManager.UpdateUser(user); } } } ViewData["SmsSent"] = false; return(View(model)); }
public ActionResult ChangePhoneNumber() { string User_Id = User.Identity.GetUserId(); User user = UserManager.FindById(User_Id); if (user == null) { return(HttpNotFound()); } ChangePhoneNumberViewModel model = new ChangePhoneNumberViewModel { User_Id = User_Id, Old_PhoneNumber = user.PhoneNumber }; return(View(model)); }
public async Task <ActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } // Generate the token and send it var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), model.PhoneNumber); if (UserManager.EmailService != null) { var message = new IdentityMessage { Destination = await UserManager.GetEmailAsync(User.Identity.GetUserId()), Body = "Mã xác minh thay đổi số điện thoại của bạn là: " + code }; await UserManager.EmailService.SendAsync(message); } return(RedirectToAction("VerifyPhoneNumber", new { PhoneNumber = model.PhoneNumber })); }
public async Task <IActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = await GetCurrentUserAsync(); if (user != null) { // Overwrites values in currently logged in user to match the new data user.PhoneNumber = model.PhoneNumber; // Saves changes _context.Update(user); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.ChangePhoneNumberSuccess })); } return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.Error })); }
public async Task <ActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var userId = User.Identity.GetUserId(); var userObj = db.Users.FirstOrDefault(user => user.Id == userId); if (userObj == null) { return(HttpNotFound()); } userObj.PhoneNumber = model.phoneNumber; await db.SaveChangesAsync(); return(RedirectToAction("Index", new { Message = ManageMessageId.PhoneNumberChangedSuccess })); }
public async Task <IActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = await GetCurrentUserAsync(); if (user != null) { var result = await _userManager.SetPhoneNumberAsync(user, model.PhoneNumber); if (result.Succeeded) { await _signInManager.SignInAsync(user, isPersistent : false); return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.ChangePhoneSuccess })); } } return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.Error })); }
public async Task <ActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var result = await UserManager.SetPhoneNumberAsync(Guid.Parse(User.Identity.GetUserId()), model.PhoneNumber); if (result.Succeeded) { var user = await UserManager.FindByIdAsync(Guid.Parse(User.Identity.GetUserId())); if (user != null) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); } return(RedirectToAction("VerifyPhoneNumber", new { PhoneNumber = model.PhoneNumber })); } AddErrors(result); return(View(model)); }
public async Task <ActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } AppUser userLoggedIn = await _userManager.FindByNameAsync(User.Identity.Name); userLoggedIn.PhoneNumber = model.NewPhoneNumber; _db.SaveChanges(); var result = await _userManager.UpdateAsync(userLoggedIn); if (result.Succeeded) { await _signInManager.SignInAsync(userLoggedIn, isPersistent : false); return(RedirectToAction("Index", "Home")); } AddErrors(result); return(View(model)); }
public async Task <ActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel cpnvm) { //if user forgot a field, send them back to //change password page to try again if (ModelState.IsValid == false) { return(View(cpnvm)); } AppUser userLoggedIn = await _userManager.FindByNameAsync(User.Identity.Name); userLoggedIn.PhoneNumber = cpnvm.PhoneNumber; //Find the logged in user using the UserManager //AppUser userLoggedIn = await _userManager.FindByNameAsync(User.Identity.Name); //Attempt to change the password using the UserManager var result = await _userManager.UpdateAsync(userLoggedIn); //if the attempt to change the password worked if (result.Succeeded) { //sign in the user with the new password await _signInManager.SignInAsync(userLoggedIn, isPersistent : false); //send the user back to the home page return(RedirectToAction("Index", "Home")); } else //attempt to change the password didn't work { //Add all the errors from the result to the model state foreach (var error in result.Errors) { ModelState.AddModelError("", error.Description); } //send the user back to the change password page to try again return(View(cpnvm)); } }
public /*async Task<*/ ActionResult /*>*/ ChangePhoneNumber(ChangePhoneNumberViewModel model) { if (ModelState.IsValid) { UserManager.ChangePhoneNumber(User.Identity.GetUserId(), model.OldNumber, model.NewNumber); } // Generate the token and send it //var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), model.Number); //if (UserManager.SmsService != null) //{ // var message = new IdentityMessage // { // Destination = model.Number, // Body = "Your security code is: " + code // }; // await UserManager.SmsService.SendAsync(message); //} //return RedirectToAction("VerifyPhoneNumber", new { PhoneNumber = model.Number }); //UserManager.SetPhoneNumber(User.Identity.GetUserId(), model.Number); return(RedirectToAction("Index")); }
public async Task <IActionResult> ChangePhoneNumber() { var epaoid = _contextAccessor.HttpContext.User.FindFirst("http://schemas.portal.com/epaoid")?.Value; try { var organisation = await _organisationsApiClient.GetEpaOrganisation(epaoid); var viewModel = new ChangePhoneNumberViewModel { PhoneNumber = ModelState.IsValid ? organisation.OrganisationData?.PhoneNumber : ModelState[nameof(ChangePhoneNumberViewModel.PhoneNumber)]?.AttemptedValue }; return(View(viewModel)); } catch (EntityNotFoundException e) { _logger.LogWarning(e, "Failed to find organisation"); return(RedirectToAction(nameof(HomeController.NotRegistered), nameof(HomeController).RemoveController())); } }
public async Task <ActionResult> ChangePhoneNumberView(ChangePhoneNumberViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var i = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), model.NewPhoneNumber); var result = await UserManager.ChangePhoneNumberAsync(User.Identity.GetUserId(), model.NewPhoneNumber, i); if (result.Succeeded) { var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); if (user != null) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); } return(RedirectToAction("Index", new { Message = "PhoneNumber has changed!" })); } AddErrors(result); return(View(model)); }
public IViewComponentResult Invoke(ChangePhoneNumberViewModel viewModel) => View(viewModel);
public async Task <IActionResult> ChangePhoneNumber(ChangePhoneNumberViewModel vm) { var epaoid = _contextAccessor.HttpContext.User.FindFirst("http://schemas.portal.com/epaoid")?.Value; try { var organisation = await GetEpaOrganisation(epaoid); if (organisation == null) { return(RedirectToAction(nameof(HomeController.NotRegistered), nameof(HomeController).RemoveController())); } if (vm.ActionChoice == "Save") { if (ModelState.IsValid) { if (string.Equals(vm.PhoneNumber, organisation.OrganisationData?.PhoneNumber)) { return(RedirectToAction(nameof(OrganisationDetails))); } // only check if a phone number has been entered - model has required validator if (await _validationApiClient.ValidatePhoneNumber(vm.PhoneNumber) == false) { ModelState.AddModelError(nameof(ChangePhoneNumberViewModel.PhoneNumber), "Enter a valid phone number"); } } if (!ModelState.IsValid) { return(RedirectToAction(nameof(ChangePhoneNumber))); } vm = new ChangePhoneNumberViewModel { PhoneNumber = vm.PhoneNumber }; return(View("ChangePhoneNumberConfirm", vm)); } else if (vm.ActionChoice == "Confirm") { var userId = _contextAccessor.HttpContext.User.FindFirst("UserId").Value; var request = new UpdateEpaOrganisationPhoneNumberRequest { PhoneNumber = vm.PhoneNumber, OrganisationId = organisation.OrganisationId, UpdatedBy = Guid.Parse(userId) }; var notifiedContacts = await _organisationsApiClient.UpdateEpaOrganisationPhoneNumber(request); if (notifiedContacts == null) { throw new Exception("Unable to update phone number"); } vm = new ChangePhoneNumberViewModel { PhoneNumber = vm.PhoneNumber, Contacts = notifiedContacts }; return(View("ChangePhoneNumberUpdated", vm)); } } catch (Exception e) { _logger.LogWarning(e, "Failed to update phone number"); ModelState.AddModelError(nameof(ChangePhoneNumberViewModel.PhoneNumber), "Unable to update the contact phone number at this time."); return(RedirectToAction(nameof(ChangePhoneNumber))); } return(RedirectToAction(nameof(OrganisationDetails))); }
public SubmitPhoneNumberCommand(ChangePhoneNumberViewModel viewModel) { changePhoneNumberViewModel = viewModel; }
public CancelPhoneNumberSubmissionCommand(ChangePhoneNumberViewModel viewModel) { changePhoneNumberViewModel = viewModel; }