public AuthRepository(DataContext context) { UserRolesMapping userRolesMapping = new UserRolesMapping(); _userRolesMapping = userRolesMapping; _context = context; }
protected override void Seed(RecepcionDeRadiosContext context) { var user = new User { ID = "1", Name = "Ruben Hernandez Puerta", Username = "******", Password = BCrypt.Net.BCrypt.HashPassword("Soporte22"), Active = 1 }; context.Users.Add(user); context.SaveChanges(); var roles = new List <Role> { new Role { Id = 1, RoleName = "Administrador" }, new Role { Id = 2, RoleName = "Tecnico" }, }; roles.ForEach(r => context.Roles.Add(r)); var rolemap = new UserRolesMapping { UserId = "1", RoleId = 1 }; context.UserRolesMapping.Add(rolemap); context.SaveChanges(); base.Seed(context); }
public ActionResult DeleteConfirmed(string id) { User user = db.Users.Find(id); UserRolesMapping mapp = db.UserRolesMapping.Where(c => c.UserId == user.ID).FirstOrDefault(); db.UserRolesMapping.Remove(mapp); db.Users.Remove(user); db.SaveChanges(); return(RedirectToAction("Index")); }
private void SeedUsersAndRoles() { var userData = System.IO.File.ReadAllText("Data/SeedData/Profile/UserSeedData.Json"); var users = JsonConvert.DeserializeObject <List <User> >(userData); var roleData = System.IO.File.ReadAllText("Data/SeedData/Profile/RolesSeedData"); var roles = JsonConvert.DeserializeObject <List <Roles> >(roleData); var count = 1; foreach (var role in roles) { _context.Roles.Add(role); } _context.SaveChanges(); foreach (var user in users) { var UsrRlsMappng = new UserRolesMapping(); byte[] passwordHash, passwordSalt; CreatePasswordhash("password", out passwordHash, out passwordSalt); user.PasswordHash = passwordHash; user.PasswordSalt = passwordSalt; user.Username = user.Username.ToLower(); if (count == 1) { UsrRlsMappng.User = user; UsrRlsMappng.Roles = _context.Roles.Where(a => a.RoleName == "Admin").FirstOrDefault(); _context.AddRange(user, UsrRlsMappng); _context.SaveChanges(); } if (count == 2) { UsrRlsMappng.User = user; UsrRlsMappng.Roles = _context.Roles.Where(a => a.RoleName == "BakeryManager").FirstOrDefault(); _context.AddRange(user, UsrRlsMappng); _context.SaveChanges(); } if (count == 3) { UsrRlsMappng.User = user; UsrRlsMappng.Roles = _context.Roles.Where(a => a.RoleName == "OutletManager").FirstOrDefault(); _context.AddRange(user, UsrRlsMappng); _context.SaveChanges(); } UsrRlsMappng.User = user; UsrRlsMappng.Roles = _context.Roles.Where(a => a.RoleName == "User").FirstOrDefault(); _context.AddRange(user, UsrRlsMappng); _context.SaveChanges(); } // _context.SaveChanges(); }
public async Task <ActionResult> UpdateRoles([Bind(Include = "Id,Username,MyRoles,RoleMasters")] RolesUpdateVM model) { if (!ModelState.IsValid) { return(View(model)); } if (TempData["roles"] == null) { return(View(model)); } List <CheckBoxRoles> roles = (List <CheckBoxRoles>)TempData["roles"]; Users user = await _unitOfWork.usersRolesRepo.GetAsync(model.Id); var userRoleMaps = user.UserRolesMapping; // Gets the role names to be updated. var rolesAdding = new List <string>(); var rolesRemoving = new List <string>(); foreach (var role in model.RoleMasters) { // assigns the role name to role.Role. role.Role = roles.Where(r => r.ID == role.ID).Select(r => r.Role).FirstOrDefault(); // check if user is in role. UserRolesMapping map = userRoleMaps.Where(r => r.RoleID == role.ID).FirstOrDefault(); if (role.IsChecked && map == null) { map = new UserRolesMapping() { UserID = user.ID, RoleID = role.ID }; _unitOfWork.rolesMappingRepo.Add(map); rolesAdding.Add(role.Role); } else if (!role.IsChecked && map != null) { _unitOfWork.rolesMappingRepo.Remove(map); rolesRemoving.Add(role.Role); } } // Updates user roles in the service's database. if (rolesAdding.Any()) { await _usersRest.AddRolesServiceAsync(user.Username, rolesAdding); } if (rolesRemoving.Any()) { await _usersRest.RemoveRolesServiceAsync(user.Username, rolesRemoving); } await _unitOfWork.SaveAsync(); return(RedirectToAction("Index")); }
//Register the user into the database for the given details public int SignUp(User model) { using (var context = new EventsDBEntities()) { context.Users.Add(model); UserRolesMapping addRole = new UserRolesMapping(); addRole.UserId = model.UserId; addRole.RoleId = 2; context.UserRolesMappings.Add(addRole); context.SaveChanges(); return(model.UserId); } }
public async Task <ActionResult> Register(RegisterVM registerViewModel) { if (!ModelState.IsValid) { ModelState.AddModelError(string.Empty, "Please try again."); return(View(registerViewModel)); } string username = registerViewModel.Username; Users user = await _unitOfWork.usersRolesRepo.GetAsync(username); if (user != null) { ModelState.AddModelError(string.Empty, "User already exists"); return(View(registerViewModel)); } string hashInfo = Hasher.HashGenerator(registerViewModel.HashedPassword); string myHash = hashInfo.Split(':')[0]; // returns the hash user = new Users() { Username = username, HashedPassword = hashInfo }; _unitOfWork.usersRolesRepo.Add(user); UserRolesMapping roleMap = new UserRolesMapping() { UserID = user.ID, RoleID = _roleId }; _unitOfWork.rolesMappingRepo.Add(roleMap); bool registerOk = await _accountRest.RegisterServiceAsync(username, myHash, _userRole); if (registerOk) { int saved = await _unitOfWork.SaveAsync(); if (saved < 0) { ModelState.AddModelError(string.Empty, "Unable to save User to client."); return(View(registerViewModel)); } bool tokenOk = await LoginHelper(username, myHash); if (tokenOk) { return(RedirectToAction("Inbox", "Messages")); } } ModelState.AddModelError(string.Empty, "Unable to register user."); return(View(registerViewModel)); }
public bool SetUserRole(int userId, int roleId) { try { var userRoles = new UserRolesMapping { UserId = userId, RoleId = roleId }; return(adb.AddUserRole(userRoles)); } catch (Exception ex) { throw ex; } }
public ActionResult Create([Bind(Include = "Name,Username,Password,Level,Active")] User user) { if (ModelState.IsValid) { user.ID = Guid.NewGuid().ToString(); user.Password = BCrypt.Net.BCrypt.HashPassword(user.Password); user.Active = 1; db.Users.Add(user); db.SaveChanges(); var rol = new UserRolesMapping(); rol.RoleId = user.Level; rol.UserId = user.ID; db.UserRolesMapping.Add(rol); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(user)); }
public bool SetUserRoles(int userId, int roleId) { try { if (edb.UserRolesMappings.Any(r => r.UserId == userId && r.RoleId == roleId)) { return(true); } UserRolesMapping userRolesMapping = new UserRolesMapping() { RoleId = roleId, UserId = userId }; edb.UserRolesMappings.Add(userRolesMapping); edb.SaveChanges(); return(true); } catch (Exception) { ModelState.AddModelError(" ", "Error Creating new Shopper"); return(false); } }