Beispiel #1
0
        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);
        }
Beispiel #2
0
        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));
        }