public async Task <IActionResult> Login(UserSignInVM user)
        {
            UserModel checker = null;

            try
            {
                checker = await db.users.FirstAsync(u => u.login == user.loginOrEmail || u.email == user.loginOrEmail);

                if (user.password != checker.password)
                {
                    ModelState.AddModelError(nameof(user.password), "Incorrect password");
                }
            }
            catch
            {
                ModelState.AddModelError(nameof(user.loginOrEmail), "Account is not exists");
            }

            if (ModelState.IsValid)
            {
                await Authenticate(user.loginOrEmail);

                HttpContext.Session.SetString("login", checker.login);
                var session = HttpContext.Session.SessionInfo();
                resultBuilder.AddJSFuncModel("updateUserInfo", session);
                resultBuilder.AddJSFuncInline("reloadHubConnection");
                return(Json(resultBuilder.Build()));
            }
            resultBuilder.AddAspView(this, "SignIn", user);
            return(Json(resultBuilder.Build()));
        }
Beispiel #2
0
 public async Task <IActionResult> SignIn(UserSignInVM signInVM)
 {
     if (!ModelState.IsValid)
     {
         return(View(signInVM));
     }
     if (!await identityService.SignIn(signInVM))
     {
         ModelState.AddModelError("Authorize error", "Invalid login/password");
         return(View(signInVM));
     }
     return(RedirectToAction(nameof(UserManagerController.Index), nameof(UserManagerController).Replace("Controller", "")));
 }
Beispiel #3
0
        public async Task <bool> SignIn(UserSignInVM userVm)
        {
            var res = await identityUnitOfWork.SignInManager.PasswordSignInAsync(userVm.Login, userVm.Password, false, false);

            if (res.Succeeded)
            {
                var user = identityContext.Users.FirstOrDefault(u => u.UserName == userVm.Login);
                if (user != null)
                {
                    user.LastOnlineDate = DateTime.Now;
                    await identityContext.SaveChangesAsync();
                }
            }
            return(res.Succeeded);
        }
Beispiel #4
0
        public async Task <IActionResult> SignIn([FromBody] UserSignInVM user)
        {
            var result = await _singInManager.PasswordSignInAsync(user.Email, user.Password, false, false);

            if (result == Microsoft.AspNetCore.Identity.SignInResult.Success)
            {
                var appUser = await _context.Users.FirstOrDefaultAsync(u => u.Email == user.Email);

                var token = GenerateAccessToken(appUser);
                return(Ok(token));
            }
            else
            {
                return(Unauthorized());
            }
        }
Beispiel #5
0
        public async Task <IActionResult> SignIn(UserSignInVM signInVM)
        {
            if (!ModelState.IsValid)
            {
                return(View(signInVM));
            }

            var res = await authenticationService.SignInAsync(signInVM.Login, signInVM.Password);

            if (!res)
            {
                ModelState.AddModelError("Authorization error", "Invalid login/password");
                return(View(signInVM));
            }

            return(RedirectToAction(nameof(Home.Index), nameof(Home)));
        }
Beispiel #6
0
        public async Task <IActionResult> SignIn([FromBody] UserSignInVM user)
        {
            try
            {
                var result = await _signInManager.PasswordSignInAsync(user.Email, user.Password, false, false);

                if (result == Microsoft.AspNetCore.Identity.SignInResult.Success)
                {
                    var appUser = _unitOfWork.Users.Find(u => u.Email == user.Email).FirstOrDefault();
                    // var appUser = await _context.Users.FirstOrDefaultAsync(u => u.Email == user.Email);
                    var token = _tokenBuilder.BuildToken(appUser);
                    return(Ok(token));
                }
                else
                {
                    return(Unauthorized());
                }
            }
            catch (Exception e)
            {
                return(Ok(e.Message));
            }
        }
 public async Task <string> SignIn(UserSignInVM user)
 {
     return(await AuthAction(_signInEndpoint, user));
 }