public async Task<ActionResult> ExternalLoginConfirmation(ExternalLoginConfirmationViewModel model, string returnUrl) { if (User.Identity.IsAuthenticated) { return RedirectToAction("Index", "Manage"); } if (ModelState.IsValid) { // Get the information about the user from the external login provider var info = await AuthenticationManager.GetExternalLoginInfoAsync(); if (info == null) { return View("ExternalLoginFailure"); } var user = new HMSUser { UserName = model.Email, Email = model.Email }; var result = await UserManager.CreateAsync(user); if (result.Succeeded) { result = await UserManager.AddLoginAsync(user.Id, info.Login); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); return RedirectToLocal(returnUrl); } } AddErrors(result); } ViewBag.ReturnUrl = returnUrl; return View(model); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new HMSUser { UserName = model.Email, Email = model.Email }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }
public async Task <JsonResult> Action(UsersActionModel model) { JsonResult json = new JsonResult(); IdentityResult result = null; if (!string.IsNullOrEmpty(model.Id))//editing a record { var user = await UserManager.FindByIdAsync(model.Id); user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Country = model.Country; user.City = model.City; user.Address = model.Address; result = await UserManager.UpdateAsync(user); } else//creating a new record { var user = new HMSUser(); user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Country = model.Country; user.City = model.City; user.Address = model.Address; result = await UserManager.CreateAsync(user); } json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; return(json); }
public async Task <ActionResult> Action(UsersActionModel model) { JsonResult json = new JsonResult(); IdentityResult result = null; if (!string.IsNullOrEmpty(model.ID)) // tyring to edit model { var users = await UserManager.FindByIdAsync(model.ID); model.FullName = users.FullName; model.Email = users.Email; model.Country = users.Country; model.Address = users.Address; model.City = users.City; model.username = users.UserName; result = await UserManager.UpdateAsync(users); json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; } else // create the record { var users = new HMSUser(); users.FullName = model.FullName; users.Email = model.Email; users.Country = model.Country; users.Address = model.Address; users.City = model.City; users.UserName = model.username; result = await UserManager.CreateAsync(users); } json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; return(json); }
public async Task <JsonResult> Action(UserActionViewModel model) { JsonResult json = new JsonResult { JsonRequestBehavior = JsonRequestBehavior.AllowGet }; IdentityResult result; // decalre IdentityResult if (!string.IsNullOrEmpty(model.ID)) // Editing record { var user = await UserManager.FindByIdAsync(model.ID); // find users based on param ID user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.Username; user.Country = model.Country; user.City = model.City; user.Address = model.Address; //model.AccomadationPackageID = accomadations.AccomadationPackageID; result = await UserManager.UpdateAsync(user); // update HMSUser table in databse } else // Saving record { HMSUser user = new HMSUser { FullName = model.FullName, Email = model.Email, UserName = model.Username, Country = model.Country, City = model.City, Address = model.Address, //model.AccomadationPackageID = accomadations.AccomadationPackageID; }; result = await UserManager.CreateAsync(user); // create user in HMSUser table in databse without a password } // show true if result is success otherwise false and show the result error json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; return(json); }
public async Task <JsonResult> Action(UsersActionViewModel model) { JsonResult json = new JsonResult(); IdentityResult result = null; if (!string.IsNullOrEmpty(model.ID)) { var user = await UserManager.FindByIdAsync(model.ID); //model.ID = user.Id; user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Country = model.Country; user.City = model.City; user.Address = model.Address; //Accomodation accomodation = _repoWrapper.Accomodations.Get(model.ID); //accomodation.Name = model.Name; //accomodation.RoleID = model.RoleID; //accomodation.Description = model.Description; //result = _repoWrapper.Accomodations.Update(accomodation); result = await UserManager.UpdateAsync(user); } else { var user = new HMSUser(); //model.ID = user.Id; user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Country = model.Country; user.City = model.City; user.Address = model.Address; result = await UserManager.CreateAsync(user); } json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; return(json); }
//Handle Create & Edit - public async Task <JsonResult> Action(UserActionModels model) { JsonResult json = new JsonResult(); IdentityResult result = null; if (!string.IsNullOrEmpty(model.ID))//we are trying to edit a record { var user = await UserManager.FindByIdAsync(model.ID); //user.Id = model.ID; user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.Username; user.Country = model.Country; user.City = model.City; user.Address = model.Address; result = await UserManager.UpdateAsync(user); } else //we are trying to create a record { var user = new HMSUser(); //user.Id = model.ID; user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.Username; user.Country = model.Country; user.City = model.City; user.Address = model.Address; result = await UserManager.CreateAsync(user); } json.Data = new { Success = false, Message = string.Join(", ", result.Errors) }; return(json); }
public async Task <JsonResult> Action(UsersActionModel user) { IdentityResult result = null; JsonResult json = new JsonResult(); //HMSUser model = new HMSUser(); if (!string.IsNullOrEmpty(user.ID)) //try to edit records { var model = await UserManager.FindByIdAsync(user.ID); model.Id = user.ID; model.FullName = user.FullName; model.UserName = user.UserName; model.Email = user.Email; model.Phone = user.Phone; model.Address = user.Address; model.City = user.City; model.Country = user.Country; result = await UserManager.UpdateAsync(model); } else { var model = new HMSUser(); model.FullName = user.FullName; model.UserName = user.UserName; model.Email = user.Email; model.Phone = user.Phone; model.Address = user.Address; model.City = user.City; model.Country = user.Country; result = await UserManager.CreateAsync(model); } json.Data = new { Success = result.Succeeded, Message = string.Join(",", result.Errors) }; return(json); }
public async Task <JsonResult> Action(UserModel model) { JsonResult result = new JsonResult(); var user = new HMSUser(); result.JsonRequestBehavior = JsonRequestBehavior.AllowGet; var message = ""; bool isSuccess = false; IdentityResult data = null; try { if (ModelState.IsValid) { if (!string.IsNullOrEmpty(model.ID)) { user = await UserManager.FindByIdAsync(model.ID); user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Address = model.Address; user.Country = model.Country; user.City = model.City; data = await UserManager.UpdateAsync(user); isSuccess = data.Succeeded; } else { user.FullName = model.FullName; user.Email = model.Email; user.UserName = model.UserName; user.Address = model.Address; user.Country = model.Country; user.City = model.City; data = await UserManager.CreateAsync(user, model.Password); isSuccess = data.Succeeded; } } else { message = string.Join("; ", ModelState.Values .SelectMany(x => x.Errors) .Select(x => x.ErrorMessage)); } } catch (Exception ex) { message = ex.Message; } if (isSuccess) { await UserManager.AddToRoleAsync(user.Id, "Users"); message = "Data Save Successfully!!"; result.Data = new { Success = true, Message = message }; } else { if (ModelState.IsValid) { message = string.Join(",", data.Errors); } result.Data = new { Success = false, Message = message }; } return(result); }