public void Test_UserRolePrivilegeUpdate_Initialize()
        {
            var role = new UserRole
            {
                Id = 1,
                Title = "test",
                IsDefault = true,
                Privilege = Privileges.Create
            };

            var value = new UserRolePrivilegeUpdate();
            var roles = new List<UserRole> { role };

            var relations = new List<UserRoleRelation>
            {
                new UserRoleRelation
                {
                    Id = 1,
                    Privilege = Privileges.Update,
                    Role = role,
                    User = new User {Id = 1}
                }
            };

            value.Initialize(new User { Id = 1 }, roles, relations);

            Assert.AreEqual(1, value.Values.Count, "Values");
            Assert.AreEqual("test", value.Values[0].Role.Title, "Role.Title");
            Assert.AreEqual(2, value.Values[0].Privileges.Count(x => x.Selected), "Privilege");
        }
Example #2
0
        public ActionResult Privilege(UserRolePrivilegeUpdate value)
        {
            var user = this.UserService.GetById(value.UserId);

            if (user == null)
            {
                return base.HttpNotFound();
            }

            var privilege = new UserPrivilege();

            if (!privilege.CanUpdateAny(user))
            {
                return NotAuthorized();
            }

            this.UserRoleService.UpdatePrivileges(user, value.Values);

            value.SuccessMessage(Messages.UserPrivilegeUpdated.FormatInvariant(user.Name));

            var roles = this.UserRoleService.GetAll();
            var privileges = this.UserRoleService.GetPrivileges(new UserRoleRelationUserSpecification(user.Id));

            value.Initialize(user, roles, privileges);
            value.SuccessMessage(Messages.UserPrivilegeUpdated.FormatInvariant(user.Name));

            return base.View(Views.Privilege, value);
        }
Example #3
0
        public ActionResult Privilege(int id)
        {
            var user = this.UserService.GetById(id);

            if (user == null)
            {
                return base.HttpNotFound();
            }

            var privilege = new UserPrivilege();

            if (!privilege.CanUpdateAny(user))
            {
                return NotAuthorized();
            }

            var roles = this.UserRoleService.GetAll();
            var privileges = this.UserRoleService.GetPrivileges(new UserRoleRelationUserSpecification(user.Id));
            var value = new UserRolePrivilegeUpdate();

            value.Initialize(user, roles, privileges);

            return base.View(Views.Privilege, value);
        }