public static bool IsValidUser(string email, string password, string passwordAgain, out List<string> errors) { errors = new List<string>(); if (!IsValidEmail(email)) errors.Add(Properties.Resources.NotAValidEmailAddress); if (!IsValidPassword(password)) errors.Add(Properties.Resources.NotAValidPassword); if (password != passwordAgain) errors.Add(Properties.Resources.PasswordsDonTMatch); if (!errors.Any()) { DataBase db = DataBase.GetInstance(); if (db.Users.Any(u => u.Email == email)) errors.Add(Properties.Resources.EmailIsTaken); } return !errors.Any(); }
public static bool LogIn(string username, string password) { if (DB == null) { DB = DataBase.GetInstance(); } password = HashPassword(password); Models.User user = DB.Users.FirstOrDefault(u => u.Email == username); if (user == null || user.PasswordHash != password) { Thread.Sleep(Properties.Settings.Default.FailedLogInSleep); return(IsLoggedIn = false); } CurrentController.Session["UserInfo"] = Info = user; return(true); }
public static bool LogIn() { if (DB == null) { DB = DataBase.GetInstance(); } if (!CurrentController.Session.AsEnumerable().Any(i => i.Key == "UserInfo" && i.Value.GetType() == typeof(Models.User))) { return(false); } Models.User userInfo = (Models.User)CurrentController.Session["UserInfo"]; Models.User user = DB.Users.FirstOrDefault(u => u.Email == userInfo.Email); if (user == null || user.PasswordHash != userInfo.PasswordHash) { return(IsLoggedIn = false); } CurrentController.Session["UserInfo"] = Info = user; return(true); }