public IActionResult ProcessRegister(UserRegister model) { if (ModelState.IsValid) { List <User> emails = _dBContext.Users.Where(u => u.Email == model.Email).ToList(); if (emails.Count > 0) { ModelState.AddModelError("Email", "Email already exits"); return(View("Register", model)); } else { //Hash password PasswordHasher <UserRegister> hasher = new PasswordHasher <UserRegister>(); string hashedPassword = hasher.HashPassword(model, model.Password); User newUser = new User { Email = model.Email, Password = hashedPassword, }; _dBContext.Add(newUser); _dBContext.SaveChanges(); HttpContext.Session.SetInt32("loggedUser", newUser.ID); return(RedirectToAction("Index", "Home")); } } return(View("Register", model)); }
public IActionResult Index() { if (LoggedUser() == null) { return(RedirectToAction("Index", "User")); } //Lobbies that are 2 or more hours old are considered expired and removed from the database List <Lobby> expiredLobbies = _dBContext.Lobbies .Where(lobby => lobby.CreatedAt < DateTime.Now.AddHours(-2)) .ToList(); //Remove each expired lobby from database foreach (Lobby lobby in expiredLobbies) { _dBContext.Remove(lobby); } _dBContext.SaveChanges(); return(View()); }
public IActionResult Index() { if (LoggedUser() == null) { return(RedirectToAction("Index", "User")); } //Lobbies that are 2 or more hours old are considered expired and removed from the database List <Lobby> expiredLobbies = _dBContext.Lobbies .Where(lobby => lobby.CreatedAt < DateTime.Now.AddHours(-2)) .ToList(); //Remove each expired lobby from database foreach (Lobby lobby in expiredLobbies) { _dBContext.Remove(lobby); } _dBContext.SaveChanges(); LobbyModels data = new LobbyModels { PlaystationLobbies = _dBContext.Lobbies .Where(lobby => lobby.Console == "Playstation") .Include(lobby => lobby.User) .OrderBy(lobby => lobby.CreatedAt) .ToList(), XboxLobbies = _dBContext.Lobbies .Where(lobby => lobby.Console == "Xbox") .Include(lobby => lobby.User) .OrderBy(lobby => lobby.CreatedAt) .ToList(), User = _dBContext.Users .Where(user => user.ID == LoggedUser()) .SingleOrDefault(), }; return(View(data)); }