public async Task <IActionResult> GetUserRoles(string id) { try { var user = await userManager.FindByIdAsync(id); ViewModel_User model = new ViewModel_User { FullName = user.FullName, Mobile = user.Mobile }; string roles = ""; foreach (var item in model.RoleNames) { roles += item + ","; } ViewBag.ExictRoles = roleManager.Roles.ToList(); ViewBag.UsersRoles = roles; return(PartialView("P_GetUserRoles", model)); } catch (Exception) { throw; } }
public async Task <IActionResult> getUser() //get all User with their Roles { var userRoles = new List <ViewModel_User>(); var q = db.UserRepository.Get(); foreach (var user in q) { var r = new ViewModel_User { FullName = user.FullName, Mobile = user.Mobile }; userRoles.Add(r); //Get all the Roles for our users foreach (var user1 in userRoles) { user1.RoleNames = await userManager.GetRolesAsync(db.UserRepository.Get(a => a.Id.Equals(user1.Id)).SingleOrDefault()); } } var model = userRoles.Where(a => a.RoleNames.ToList().Contains("User")).ToList(); return(View(model)); }
public async Task <IActionResult> EditUser(string id) { try { var user = await userManager.FindByIdAsync(id); ViewModel_User model = new ViewModel_User(); model.Mobile = user.Mobile; model.FullName = user.FullName; return(View(model)); } catch (Exception e) { throw e; } }
public async Task <IActionResult> CreateUser(ViewModel_User model) { try { if (ModelState.IsValid) { if (await userManager.FindByEmailAsync(model.Mobile) == null) { var user = new Tbl_User(); user.FullName = model.FullName; user.Mobile = model.Mobile; var result = await userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var result1 = await userManager.AddToRoleAsync(user, "User"); TempData["Style"] = "alert alert-success text-center"; TempData["Message"] = "succefully saved"; return(View(model)); } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = "there is problem to save!"; return(View(model)); } } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = "this User Email Exist in Database"; return(View(model)); } } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = ModelState.GetErrors(); return(View(model)); } } catch (Exception e) { throw e; } }
public async Task <IActionResult> GetUserDetail(string id) { try { var user = await userManager.FindByIdAsync(id); ViewModel_User model = new ViewModel_User { FullName = user.FullName, Mobile = user.Mobile, Id = user.Id, RoleNames = await userManager.GetRolesAsync(user) }; return(PartialView("P_GetUserDetail", model)); } catch (Exception) { throw; } }
public async Task <IActionResult> EditUser(ViewModel_User model, string id) { try { if (ModelState.IsValid) { var user = await userManager.FindByIdAsync(id); user.Mobile = model.Mobile; user.FullName = model.FullName; var result = await userManager.UpdateAsync(user); if (model.Password != null) { // Generate the reset token (this would generally be sent out as a query parameter as part of a 'reset' link in an email) string resetToken = await userManager.GeneratePasswordResetTokenAsync(user); // Use the reset token to verify the provenance of the reset request and reset the password. IdentityResult updatePassResult = await userManager.ResetPasswordAsync(user, resetToken, model.Password); if (result.Succeeded && updatePassResult.Succeeded) { var result1 = await userManager.AddToRoleAsync(user, "Agent"); TempData["Style"] = "alert alert-success text-center"; TempData["Message"] = "succefully saved"; return(View(model)); } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = "there is problem to save!"; return(View(model)); } } else { if (result.Succeeded) { var result1 = await userManager.AddToRoleAsync(user, "Agent"); TempData["Style"] = "alert alert-success text-center"; TempData["Message"] = "succefully saved"; return(View(model)); } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = "there is problem to save!"; return(View(model)); } } } else { TempData["Style"] = "alert alert-warning text-center"; TempData["Message"] = ModelState.GetErrors(); return(View(model)); } } catch (Exception e) { throw e; } }