public void Create_WithNonExistingItem_DoesNotThrow() { var res = Crypto.Encrypt("testPass"); var model = new UserDetailModelDTO { Id = new Guid(), Groups = new List <GroupListModelDTO>() { new GroupListModelDTO() { Id = new Guid() } }, Description = "Test Description", Email = "*****@*****.**", Hash = res.Hash, Gender = Gender.Female, LastName = "test", FirstName = "test", Username = "******", AdminGroups = new List <GroupListModelDTO>() { new GroupListModelDTO() { Id = new Guid() } }, AdminOrganizations = new List <OrganizationListModelDTO>() { new OrganizationListModelDTO() { Id = new Guid() } }, Organizations = new List <OrganizationListModelDTO>() { new OrganizationListModelDTO() { Id = new Guid() } }, RegistrationDate = DateTime.Today, Password = "******", Salt = res.Salt, SignInLogs = new List <LogInDetailModelDTO>() { new LogInDetailModelDTO() { Id = new Guid(), User = new UserDetailModelDTO() } } }; var returnedModel = fixture.Repository.AddUser(model); Assert.IsNotNull(returnedModel); }
public UserDetailModelDTO GetUserByModel(UserDetailModelDTO user) { using (var Connection = chatterDbContextFactory.CreateDbContext()) { var user_name = Connection.Users.SingleOrDefault(x => x.Email == user.Email || x.Username == user.Username || x.Id == user.Id); return(user_name == null ? null : mapper.MapEntityToDetailModel(user_name)); } }
public bool Authenticate(UserDetailModelDTO user) { var userLogin = GetUserByUsername(user.Username); if (userLogin == null) { userLogin = GetUserByEmail(user.Username); } return(userLogin != null?Crypto.Decrypt(userLogin.Salt, userLogin.Hash, user.Password) : false); }
public void EditUser(UserDetailModelDTO user) { using (var Connection = chatterDbContextFactory.CreateDbContext()) { bool edited = false; User edit_user = new User() { Id = user.Id }; edit_user = Connection.Users.Where(x => x.Id == user.Id).SingleOrDefault(); Connection.Users.Attach(edit_user); if (edit_user.FirstName != user.FirstName) { edited = true; edit_user.FirstName = user.FirstName; } if (edit_user.LastName != user.LastName) { edited = true; edit_user.LastName = user.LastName; } if (edit_user.Gender != user.Gender) { edited = true; edit_user.Gender = user.Gender; } if (edit_user.Description != user.Description) { edited = true; edit_user.Description = user.Description; } if (edit_user.Email != user.Email) { edited = true; edit_user.Email = user.Email; } edit_user.Password = user.Hash; edit_user.Salt = user.Salt; if (edited) { Connection.SaveChanges(); } } }
public ICollection <CommentDetailModelDTO> GetCommentsByUser(UserDetailModelDTO user) { using (var connection = chatterDbContextFactory.CreateDbContext()) { var posts = new DBPost(chatterDbContextFactory); var comments = new ObservableCollection <CommentDetailModelDTO>(connection.Comments.Where(x => x.User.Id == user.Id).Select(mapper.MapEntityToDetailModel)); foreach (var comment in comments) { comment.Post = posts.GetPostByComment(comment); } return(comments); } }
public UserDetailModelDTO AddUser(UserDetailModelDTO user) { using (var Connection = chatterDbContextFactory.CreateDbContext()) { var newUser = mapper.MapDetailToEntity(user); newUser.Id = Guid.NewGuid(); var pass = Crypto.Encrypt(user.Password); newUser.Password = pass.Hash; newUser.Salt = pass.Salt; Connection.Users.Add(newUser); Connection.SaveChanges(); return(mapper.MapEntityToDetailModel(newUser)); } }
public void AddUserToOrganization(OrganizationDetailModelDTO organization, UserDetailModelDTO user) { using (var connection = chatterDbContextFactory.CreateDbContext()) { Organization edit_organization = new Organization() { Id = organization.Id }; User_Organization newUser = new User_Organization() { Id = user.Id }; edit_organization.Users.Add(newUser); connection.SaveChanges(); } }
public User MapDetailToEntity(UserDetailModelDTO user) { if (user == null) { return new User() { Email = Functions.RandomString(6) } } ; if (user.Email == null) { user.Email = Functions.RandomString(5); } byte[] Salt, Hash; if (user.Password == null) { Salt = user.Salt; Hash = user.Hash; } else { (Salt, Hash) = Crypto.Encrypt(user.Password); } return(new User() { Id = user.Id, Username = user.Username, FirstName = user.FirstName, LastName = user.LastName, Gender = user.Gender, Description = user.Description, Email = user.Email, Password = Hash, Salt = Salt, RegistrationDate = user.RegistrationDate, SignInLogs = new ObservableCollection <SignInLog>(user.SignInLogs.Select(MapDetailToEntity)), }); }
public void EditPassword(UserDetailModelDTO user) { string pass = user.Password; user = GetUserById(user.Id); user.Password = pass; using (var Connection = chatterDbContextFactory.CreateDbContext()) { User edit_user = new User() { Id = user.Id }; edit_user = Connection.Users.Where(x => x.Id == user.Id).SingleOrDefault(); Connection.Users.Attach(edit_user); var(Salt, Hash) = Crypto.Encrypt(user.Password); edit_user.Salt = Salt; edit_user.Password = Hash; Connection.SaveChanges(); } }