public A4ALoginViewModel Login(A4ALoginViewModel vm) { var aa = Repository.GetObjectByPrimaryKey <A4AAuthenticationAccount>(vm.Email); if (aa == null) { // account does not exist vm.Authenticated = A4ALoginViewModel.AuthenticationResult.UserNotFound; } else { vm.AuthenticationAccount = aa; if (vm.Code1 == aa.Code1 && vm.Code2 == aa.Code2 && vm.Code3 == aa.Code3 && vm.Code4 == aa.Code4) { vm.Authenticated = A4ALoginViewModel.AuthenticationResult.Authenticated; vm.Name = aa.Name; } else { vm.Authenticated = A4ALoginViewModel.AuthenticationResult.PasswordInvalid; } } return(vm); }
public IActionResult Index(A4ALoginViewModel login) { var thisLogin = model.Login(login); if (thisLogin.Authenticated == A4ALoginViewModel.AuthenticationResult.Authenticated) { HttpContext.Session.SetString(ModelNames.SessionStrings.UserEmail.ToString(), thisLogin.AuthenticationAccount.Email); HttpContext.Session.SetString(ModelNames.SessionStrings.UserType.ToString(), thisLogin.AuthenticationAccount.UserType.ToString()); HttpContext.Session.SetString(ModelNames.SessionStrings.UserName.ToString(), thisLogin.AuthenticationAccount.Name); if (thisLogin.AuthenticationAccount.UserType == A4APartyType.Admin) { return(RedirectToAction(nameof(Administration), new { objecttype = ModelNames.ObjectTypes.Company, verb = ModelNames.Verb.List })); } else if (thisLogin.AuthenticationAccount.UserType == A4APartyType.Expert) { return(RedirectToAction(nameof(EmailManager), new { objecttype = ModelNames.ObjectTypes.Message, verb = ModelNames.Verb.List, listtype = A4AMailboxType.Inbox })); } else if (thisLogin.AuthenticationAccount.UserType == A4APartyType.User) { return(RedirectToAction(nameof(EmailManager), new { objecttype = ModelNames.ObjectTypes.Message, verb = ModelNames.Verb.List, listtype = A4AMailboxType.Inbox })); //return RedirectToAction(nameof(WebMail2),new {objecttype = ModelNames.ObjectTypes.Message}); } } return(View(thisLogin)); }