Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
 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;
     }
 }
Ejemplo n.º 3
0
        // 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);
        }