public async Task<ActionResult> Login(LoginViewModel model, string returnUrl) { if (ModelState.IsValid) { var user = await UserManager.FindAsync(model.UserName, model.Password); if (user != null) { await SignInAsync(user, model.RememberMe); var db = new CMISProject.DAL.CIMSEntities(); if (db.Admins.Where(s => s.AdminName == model.UserName).Count() == 1) { HttpContext.Session["isAdmin"] = true; HttpContext.Session["UserId"] = db.Admins.Single(s => s.AdminName == model.UserName).AdminId; } else if( db.Users.Where(s => s.UserName == model.UserName).Count()==1) { HttpContext.Session["isAdmin"] = false; HttpContext.Session["UserId"] = db.Users.Single(s => s.UserName == model.UserName).UserId; } HttpContext.Session["Username"] = model.UserName; return RedirectToLocal(returnUrl); } else { ModelState.AddModelError("", "Invalid username or password."); } } // If we got this far, something failed, redisplay form return View(model); }
public AddMemberViewModel(int id) { var db = new CMISProject.DAL.CIMSEntities(); var u = db.Users; Group = db.Groups.Find(id); foreach (var user in u) { this.members.Add(new SelectMemberViewModel() { user = user }); } foreach (var groupUser in db.GroupUserRelations.Where(s => s.GroupId == Group.GroupId).ToList()) { var mem = this.members.Find(s => s.user == groupUser.User); mem.selected = true; } }
// GET: Navbar public ActionResult Index() { var data = new Data(); var navBarItems = data.navbarItems().ToList(); int totalNavItem = data.navbarItems().Count(); if(User.Identity.IsAuthenticated) { var db = new CMISProject.DAL.CIMSEntities(); if ((bool)Session["isAdmin"]) { foreach (var group in db.Groups) { navBarItems.Add(new Navbar { Id = totalNavItem + 1, nameOption = group.GroupName, status = true, isParent = false, parentId = 19 }); totalNavItem++; } foreach (var user in db.Users) { navBarItems.Add(new Navbar { Id = totalNavItem + 1, nameOption = user.UserName, status = true, isParent = false, parentId = 23 }); totalNavItem++; } } else { int curUserId = (int)HttpContext.Session["UserId"]; var groupsUsers = db.Users.Join(db.GroupUserRelations.Where(s => s.UserId == curUserId), o => o.UserId, i => i.UserId, (c, o) => new { c, o }); foreach (var groupUser in groupsUsers) { Group group = groupUser.o.Group; navBarItems.Add(new Navbar { Id = totalNavItem + 1, nameOption = group.GroupName, status = true, isParent = false, parentId = 19 }); totalNavItem++; } } } return PartialView("_Navbar", navBarItems); }