public static LoginStatus SignIn(String email, String password) { try { var emailCheck = new EmailCheck(); if (String.IsNullOrWhiteSpace(email) || String.IsNullOrWhiteSpace(password)) { return(LoginStatus.EmptyValue); } if (!emailCheck.IsValidEmail(email) || password.Length > 15 || password.Length < 5) { return(LoginStatus.NotValid); } var rep = new GenericRepository.Repository(); var user = rep.Context.Users.Where(x => x.Email == email).FirstOrDefault(); if (user != null) { var userPass = user.Password; var userSalt = user.Salt; using (MD5 md5Hash = MD5.Create()) { if (VerifyMd5Hash(md5Hash, password + userSalt, userPass)) { return(LoginStatus.Success); } else { return(LoginStatus.NotValid); } } } else { return(LoginStatus.UserDoesNotExist); } } catch (Exception ex) { return(LoginStatus.UnexpectedError); } }
public static RegisterStatus SignUp(String password, String email, String firstName, String lastName) { try { var emailCheck = new EmailCheck(); if (String.IsNullOrWhiteSpace(email) || String.IsNullOrWhiteSpace(password) || String.IsNullOrWhiteSpace(firstName) || String.IsNullOrWhiteSpace(lastName)) { return(RegisterStatus.EmptyValue); } if (!emailCheck.IsValidEmail(email) || password.Length > 15 || password.Length < 5) { return(RegisterStatus.NotValid); } using (var rep = new GenericRepository.Repository()) { if (rep.Context.Users.Where(x => x.Email == email).FirstOrDefault() != null) { return(RegisterStatus.EmailExists); } String hash = String.Empty; String salt = String.Empty; using (MD5 md5Hash = MD5.Create()) { salt = GetSalt(); hash = GetMd5Hash(md5Hash, password + salt); } rep.Add(new User { Email = email, Password = hash, Salt = salt, FirstName = firstName, LastName = lastName, PermissionId = 1 }); rep.Save(); return(RegisterStatus.Success); } } catch (Exception ex) { return(RegisterStatus.UnexpectedError); } }
public static RegisterStatus SignUp(String password, String email, String firstName, String lastName) { try { var emailCheck = new EmailCheck(); if (String.IsNullOrWhiteSpace(email) || String.IsNullOrWhiteSpace(password) || String.IsNullOrWhiteSpace(firstName) || String.IsNullOrWhiteSpace(lastName)) return RegisterStatus.EmptyValue; if (!emailCheck.IsValidEmail(email) || password.Length > 15 || password.Length < 5) return RegisterStatus.NotValid; using (var rep = new GenericRepository.Repository()) { if (rep.Context.Users.Where(x => x.Email == email).FirstOrDefault() != null) { return RegisterStatus.EmailExists; } String hash = String.Empty; String salt = String.Empty; using (MD5 md5Hash = MD5.Create()) { salt = GetSalt(); hash = GetMd5Hash(md5Hash, password + salt); } rep.Add(new User { Email = email, Password = hash, Salt = salt, FirstName = firstName, LastName = lastName, PermissionId = 1 }); rep.Save(); return RegisterStatus.Success; } } catch (Exception ex) { return RegisterStatus.UnexpectedError; } }
public static LoginStatus SignIn(String email, String password) { try { var emailCheck = new EmailCheck(); if (String.IsNullOrWhiteSpace(email) || String.IsNullOrWhiteSpace(password)) return LoginStatus.EmptyValue; if (!emailCheck.IsValidEmail(email) || password.Length > 15 || password.Length < 5) return LoginStatus.NotValid; var rep = new GenericRepository.Repository(); var user = rep.Context.Users.Where(x => x.Email == email).FirstOrDefault(); if (user != null) { var userPass = user.Password; var userSalt = user.Salt; using (MD5 md5Hash = MD5.Create()) { if (VerifyMd5Hash(md5Hash, password + userSalt, userPass)) return LoginStatus.Success; else return LoginStatus.NotValid; } } else return LoginStatus.UserDoesNotExist; } catch (Exception ex) { return LoginStatus.UnexpectedError; } }