//Login public static Boolean Login(AccountViewModel_Login view, AccountViewModel account, string ConnectionString, SecurityLogic security) { if (view.Login == null) { view.Errors.Add("No Login Name Provided"); } if (view.password == null) { view.Errors.Add("No Password Provided"); } if (view.Errors.Count > 0) { return(false); } if (AccountDataAccess.GetSalt(view, ConnectionString)) { if (view.salt == null) { return(false); } if (view.Errors.Count > 0) { return(false); } if (AccountDataAccess.Login(view, account, ConnectionString, security)) { if (account.AccountID == null || account.AccountID <= 0) { view.Errors.Add("No Login Name Provided"); } if (account.username == null) { view.Errors.Add("Error Retrieving Username"); } if (account.email == null) { view.Errors.Add("Error Retrieving Email"); } if (view.Errors.Count > 0) { return(false); } if (account.Errors.Count > 0) { return(false); } return(true); } } return(false); }
//Login public static Boolean Login(AccountViewModel_Login view, AccountViewModel AccountView, string ConnectionString, SecurityLogic security) { if (!GetSalt(view, ConnectionString)) { AccountView.Errors.Add(view.Errors.First()); return(false); } else { if (view.salt != null) { try { DataAccess dataAccess = new DataAccess(ConnectionString, "spAccounts_Login"); dataAccess.SetParamater_Input("@LoginID", view.Login, SqlDbType.VarChar, 100); dataAccess.SetParamater_Input("@Hash", security.GenerateSaltedHash(view.password, Encoding.ASCII.GetBytes(view.salt)), SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outAccountID", SqlDbType.Int); dataAccess.SetParamater_Output("@outUsername", SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outEmail", SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outFirstName", SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outLastName", SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outCretedOn", SqlDbType.DateTime); dataAccess.SetParamater_Output("@outLastEditedOn", SqlDbType.DateTime); dataAccess.ExecuteNonQuery(); AccountView.AccountID = (int?)(dataAccess.GetParamater("@outAccountID")); AccountView.username = (string)(dataAccess.GetParamater("@outUsername")); AccountView.email = (string)(dataAccess.GetParamater("@outEmail")); AccountView.firstname = (string)(dataAccess.GetParamater("@outFirstName")); AccountView.lastname = (string)(dataAccess.GetParamater("@outLastName")); AccountView.CreatedOn = (DateTime?)(dataAccess.GetParamater("@outCretedOn")); AccountView.LastEditedOn = (DateTime?)(dataAccess.GetParamater("@outLastEditedOn")); return(true); } catch (Exception ex) { AccountView.Errors.Add(ex.Message); return(false); } } else { AccountView.Errors.Add(view.Errors.First()); return(false); } } }
public static Boolean GetSalt(AccountViewModel_Login view, string ConnectionString) { try { DataAccess dataAccess = new DataAccess(ConnectionString, "spAccounts_GetLoginSalt"); dataAccess.SetParamater_Input("@LoginID", view.Login, SqlDbType.VarChar, 100); dataAccess.SetParamater_Output("@outSalt", SqlDbType.VarChar, 100); dataAccess.ExecuteNonQuery(); view.salt = (string)(dataAccess.GetParamater("@outSalt")); return(true); } catch (Exception ex) { view.Errors.Add(ex.Message); return(false); } }