public UserAccount UpdateUser(IRegistrationModel model) { string guid = Guid.NewGuid().ToString(); var curUser = GetCurrentUser(); model.Id = curUser.Id; DateTime date = DateTime.UtcNow; if (!string.IsNullOrEmpty(model.Password)) { if (!string.IsNullOrEmpty(model.Old_Password)) { if (!ConfirmationPassword(curUser, model.Old_Password)) { return(curUser); } } string salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8); string hash = AccountFacade.GenerateHash(model.Password, salt); Repository.UpdateUser(date, salt, hash, model); } else { Repository.UpdateUser(date, curUser.PasswordSalt, curUser.PasswordHash, model); } return(Repository.GetUserBy(model.Id)); }
/// <summary> /// Registration of a new user /// </summary> private void RegistrationOption() { Console.WriteLine(StringLiterals.Registration + StringLiterals.EmailId); string emailId = Console.ReadLine(); Console.WriteLine(StringLiterals.ValidPassword); string password = Console.ReadLine(); Console.WriteLine(StringLiterals.ConfirmPassword); string confirmPassword = Console.ReadLine(); Console.WriteLine(StringLiterals.FirstName); string firstName = Console.ReadLine(); Console.WriteLine(StringLiterals.LastName); string lastName = Console.ReadLine(); Console.WriteLine(StringLiterals.IsStudent); string isStudent = Console.ReadLine(); if (Validations.ValidateEmail(emailId) && Validations.ValidatePassword(password) && Validations.VerifyPassword(password, confirmPassword) && Validations.ValidateName(firstName) && Validations.ValidateName(lastName)) { _portalFactory = new AuthenticationFactory(emailId, password, confirmPassword, firstName, lastName, isStudent); _authenticationModel = _portalFactory.GetModel(UserOptionEnum.Registration); Console.WriteLine(_authenticationModel.Register()); } else { Console.WriteLine(StringLiterals.InvalidDetails); } }
public void UpdateUser(DateTime date, string salt, string hash, IRegistrationModel model) { var entity = new UserAccount(); entity.Id = model.Id; entity.RegistrationDate = date; entity.PasswordSalt = salt; entity.PasswordHash = hash; entity.Avatar = model.Avatar; entity.Description = model.Description; entity.Email = model.Email; entity.NickName = model.NickName; var queryBuilder = new StringBuilder(); queryBuilder.Append("UPDATE UserAccount SET "); queryBuilder.Append("RegistrationDate = @RegistrationDate, "); queryBuilder.Append("Email = @Email, "); queryBuilder.Append("NickName = @NickName, "); queryBuilder.Append("PasswordSalt = @PasswordSalt, "); queryBuilder.Append("PasswordHash = @PasswordHash, "); queryBuilder.Append("Avatar = @Avatar, "); queryBuilder.Append("Description = @Description "); queryBuilder.Append("WHERE Id = @Id"); using (var db = new ProfileDbManager(_conn)) { db.SetCommand(queryBuilder.ToString(), db.CreateParameters(entity)). ExecuteNonQuery(); } }
public UserAccount SaveUser(DateTime date, string salt, string hash, IRegistrationModel model, string facebookId = null, string googleId = null, string twitterId = null) { var user = new UserAccount(); user.Id = model.Id; user.NickName = model.NickName; user.Culture = model.Culture; user.Description = model.Description; user.Avatar = model.Avatar; user.SessionId = string.Empty; user.PasswordSalt = salt; user.PasswordHash = hash; user.LoginDate = date; user.RegistrationDate = date; user.Hash = Guid.NewGuid().ToString("N"); user.Email = model.Email; //if (!string.IsNullOrEmpty(facebookId)) // user.FacebookProfile = facebookId; //user.Provider = OAuthProvider.FaceBook.ToString(); //if (!string.IsNullOrEmpty(googleId)) // user.GoogleProfile = googleId; //if (!string.IsNullOrEmpty(twitterId)) // user.TwitterProfile = twitterId; SaveUser(user); return(user); }
public UserAccount UpdateUserPassword(IRegistrationModel regmodel) { var curUser = Repository.GetUsersBy(regmodel.Email); if (curUser != null) { DateTime date = DateTime.UtcNow; string guid = Guid.NewGuid().ToString(); string salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8); string hash = AccountFacade.GenerateHash(regmodel.Password, salt); Repository.UpdateUser(salt, hash, curUser); curUser.PasswordHash = hash; curUser.PasswordSalt = salt; return(curUser); } return(null); }
public UserAccount RegistrateUser(IRegistrationModel model) { string guid = Guid.NewGuid().ToString(); model.Id = Guid.NewGuid().ToString(); DateTime date = DateTime.UtcNow; string salt = Md5Manager.EncryptToString(string.Concat(guid, date), Encoding.UTF8); string hash = AccountFacade.GenerateHash(model.Password, salt); UserAccount userEntity = Repository.SaveUser(date, salt, hash, model); if (userEntity == null) { throw new Exception("Unable to registrate user"); } return(userEntity); }
/// <summary> /// Login Credintals /// </summary> private void LoginOption() { Console.WriteLine(StringLiterals.Login + StringLiterals.EmailId); string emailId = Console.ReadLine(); Console.WriteLine(StringLiterals.Password); string password = Console.ReadLine(); _portalFactory = new AuthenticationFactory(emailId, password); _authenticationModel = _portalFactory.GetModel(UserOptionEnum.Login); string access = _authenticationModel.ValidateLogin(); if (access == StringLiterals.LoginSuccessful) { Console.WriteLine(access); DisplayControl(); } else { Console.WriteLine(access); } }
public static IUserModel CreateNewUser(IRegistrationModel dataModel) { IUserModel userModel; using (var connection = new SqlConnection(Database.ConnectionString)) { connection.Open(); using (var command = new SqlCommand("Security.CreateNewUser")) { command.Connection = connection; command.CommandType = CommandType.StoredProcedure; var sqlParams = new List <SqlParameter> { new SqlParameter("@AuthenticationTypeId", dataModel.AuthenticationTypeId), new SqlParameter("@FirstName", dataModel.FirstName), new SqlParameter("@LastName", dataModel.LastName), new SqlParameter("@EmailAddress", dataModel.EmailAddress), new SqlParameter("@UserId", dataModel.UserId), new SqlParameter("@HashedPassword", dataModel.HashedPassword), new SqlParameter("@PasswordSalt", dataModel.PasswordSalt), new SqlParameter("@IsTemporaryPassword", dataModel.IsTemporaryPassword) }; command.Parameters.AddRange(sqlParams.ToArray()); using (DbDataReader reader = command.ExecuteReader()) { // 1.) RESULT SET: TENANT META DATA userModel = reader.Materialize <UserModel>().FirstOrDefault() ?? new UserModel(); } } } return(userModel); }
public RegistrationPresenter(IRegistrationView iRegistrationView, IRegistrationModel iRegistrationModel, IMedicalCardManager iMedicalCardManager) { if (iRegistrationView is null) { throw new ArgumentNullException(String.Format("{0} is null", nameof(iRegistrationView))); } if (iRegistrationModel is null) { throw new ArgumentNullException(String.Format("{0} is null", nameof(iRegistrationModel))); } if (iMedicalCardManager is null) { throw new ArgumentNullException(String.Format("{0} is null", nameof(iMedicalCardManager))); } this.iRegistrationView = iRegistrationView; this.iRegistrationModel = iRegistrationModel; this.iMedicalCardManager = iMedicalCardManager; iRegistrationView.RegistrationFormLoad += IRegistrationView_RegistrationFormLoad; iRegistrationView.SaveChanges += IRegistrationView_SaveChanges; }