public async Task <IActionResult> Login(User user, string password)
        {
            ViewBag.CheckUserPassword = true;
            ViewBag.CheckUserLogin    = true;
            var item = dbContext.User.FirstOrDefault(x => x.UserLogin == user.UserLogin);

            if (item != null && !string.IsNullOrEmpty(password))
            {
                var salt       = Convert.FromBase64String(item.UserSalt);
                var saltedHash = HashPassword.GenerateSaltedHash(Encoding.UTF8.GetBytes(password), salt);
                var hash       = Convert.FromBase64String(item.UserHash);
                if (!HashPassword.CompareByteArrays(saltedHash, hash))
                {
                    ViewBag.CheckUserPassword = false;
                    return(View());
                }
                await Authenticate(item);

                return(item.UserType == "passenger" ? RedirectToAction("Index", "Home")
                    : RedirectToAction("Index", "Passenger"));
            }
            ViewBag.CheckUserLogin = false;
            return(View());
        }