public ActionResult StoreManager(ManagerHouse mh) { if (Session["user_id"] != null) { if (Session["check_pass"] == null) { return(RedirectToAction("CheckingNManager")); } if (!ModelState.IsValid) { return(View("CreateManager", mh)); } var keyChecking = _Context.HouseKeys.SingleOrDefault(hk => hk.Key == mh.Key); if (keyChecking == null) { ModelState.AddModelError("Key", "Invalid Key. Please Try Another."); return(View("CreateManager", mh)); } var checkExistingManage = _Context.ManagerHouses.SingleOrDefault(m => m.Key == m.Key && m.IsActive == true); if (checkExistingManage != null) { ModelState.AddModelError("Key", "Already have a manager."); return(View("CreateManager", mh)); } mh.IsActive = true; _Context.ManagerHouses.Add(mh); _Context.SaveChanges(); var existingUser = _Context.Users.Find((int)Session["user_id"]); existingUser.IsAManager = true; _Context.SaveChanges(); var user_id = (int)Session["user_id"]; var user = _Context.Users.Find(user_id); UserHouse uh = new UserHouse(); uh.UserId = user.UserId; uh.IsActive = true; uh.HouseKeyId = keyChecking.Id; _Context.UserHouses.Add(uh); _Context.SaveChanges(); return(RedirectToAction("Index", "Users")); } return(RedirectToAction("LogInUser", "Users")); }
public ActionResult CreateManager() { if (Session["user_id"] != null) { if (Session["check_pass"] == null) { return(RedirectToAction("CheckingNManager")); } var houserManager = new ManagerHouse() { User_Id = (int)Session["user_id"] }; return(View(houserManager)); } return(RedirectToAction("LogInUser", "Users")); }
public ActionResult StoreNewManager(NewManagerWithExistingManagerViewModel nmwem) { if (Session["user_id"] != null) { if (Session["check_pass1"] == null) { return(RedirectToAction("ReplaceManager")); } if (!ModelState.IsValid) { return(View("CreateNewManager", nmwem)); } string key = (string)Session["temporary_key"]; var existingManager = _Context.ManagerHouses.SingleOrDefault( mh => mh.IsActive == true && mh.Key == nmwem.ManagerHouse.Key); if (key != nmwem.ManagerHouse.Key) { ModelState.AddModelError("UserHouse.Key", "Key is not valid"); return(View("CreateNewManager", nmwem)); } existingManager.IsActive = false; _Context.SaveChanges(); var newManager = _Context.Users.SingleOrDefault(u => u.UserId == nmwem.UserId && u.IsValid == true); if (newManager == null) { ModelState.AddModelError("UserId", "User is not valid. Please try valid user."); return(View("CreateNewManager", nmwem)); } ManagerHouse newManagerHouse = new ManagerHouse(); newManagerHouse.User_Id = newManager.Id; newManagerHouse.IsActive = true; newManagerHouse.Key = nmwem.ManagerHouse.Key; _Context.ManagerHouses.Add(newManagerHouse); _Context.SaveChanges(); var HouseKey = _Context.HouseKeys.SingleOrDefault(hk => hk.Key == key); var user = _Context.Users.Find(newManager.Id); user.IsAManager = true; _Context.SaveChanges(); var checkingUser = _Context.UserHouses.SingleOrDefault( userHouse => userHouse.UserId == user.UserId && userHouse.IsActive == true); if (checkingUser == null) { UserHouse uh = new UserHouse(); uh.UserId = user.UserId; uh.IsActive = true; uh.HouseKeyId = HouseKey.Id; _Context.UserHouses.Add(uh); _Context.SaveChanges(); } Session["temporary_key"] = null; return(RedirectToAction("Index", "Users")); } return(RedirectToAction("LogInUser", "Users")); }