Пример #1
0
        public async Task <IActionResult> Login(string input_login, string input_password)
        {
            if (ModelState.IsValid)
            {
                gameModel.gameModel model = new gameModel.gameModel();
                var current_user          = await model.Users.FirstOrDefaultAsync(u => u.Login == input_login);

                bool isFound = (current_user != null);
                if (isFound)
                {
                    if (current_user.PasswordHash == getHashSha256(input_password))
                    {
                        var claims = new List <Claim>
                        {
                            new Claim(ClaimsIdentity.DefaultNameClaimType, current_user.Login)
                        };
                        ClaimsIdentity id = new ClaimsIdentity(claims, "ApplicationCookie", ClaimsIdentity.DefaultNameClaimType,
                                                               ClaimsIdentity.DefaultRoleClaimType);
                        // setting auth cookies
                        await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(id));

                        return(RedirectToAction("Index", "characters"));
                    }
                }
            }
            ModelState.AddModelError("Error", "Login or password are incorrect. Please try again.");
            return(View("Login"));
        }
Пример #2
0
        public CharactersController()
        {
            var    query1 = _httpContextAccessor.HttpContext.User.Claims.FirstOrDefault();
            string login  = query1.Value;

            _currentUser = _context.Users.FirstOrDefault(u => u.Login == login);
            _context     = new gameModel.gameModel();
        }
Пример #3
0
 public GameController()
 {
     _context = new gameModel.gameModel();
     string login = _httpContextAccessor.HttpContext.User.Claims.FirstOrDefault().Value;
     _currentUser = _context.Users.FirstOrDefault(u => u.Login == login);
     ForestMonsterQuery = _context.Monsters.Where(m => m.InForest == true);
     TownMonsterQuery   = _context.Monsters.Where(m => m.InTown   == true);
     MeadowMonsterQuery = _context.Monsters.Where(m => m.InMeadow == true);
     DesertMonsterQuery = _context.Monsters.Where(m => m.InDesert == true);
     MountainMonsterQuery = _context.Monsters.Where(m=> false);
 }
Пример #4
0
 public HomeController()
 {
     _context = new gameModel.gameModel();
 }