Exemplo n.º 1
0
        /// <summary>
        /// Delete a user role
        /// </summary>
        /// <param name="userRole">User role</param>
        public void DeleteUserRole(UserRole userRole)
        {
            if (userRole == null)
                throw new ArgumentNullException("userRole");

            if (userRole.IsSystemRole)
                throw new GatherException("System role could not be deleted");

            _userRoleRepository.Delete(userRole);
            UpdateUserRole(userRole);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Updates the user role
        /// </summary>
        /// <param name="userRole">User role</param>
        public void UpdateUserRole(UserRole userRole)
        {
            if (userRole == null)
                throw new ArgumentNullException("userRole");

            var workContext = EngineContext.Current.Resolve<IWorkContext>();

            userRole.LastModifiedBy = workContext.CurrentUser.Id;
            userRole.LastModifiedDate = DateTime.Now;

            _userRoleRepository.Update(userRole);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Inserts a user role
        /// </summary>
        /// <param name="userRole">User role</param>
        public void InsertUserRole(UserRole userRole)
        {
            if (userRole == null)
                throw new ArgumentNullException("userRole");

            userRole.Active = true;
            userRole.CreatedDate = DateTime.Now;

            _userRoleRepository.Insert(userRole);
        }
        public UserRoleModel PrepareUserRoleModel(UserRole userRole)
        {
            var model = userRole.ToModel();

            model.AvailablePermissionRecords = _permissionService.GetAllPermissionRecords().Select(p => p.ToModel()).ToList();

            return model;
        }
        public UserRoleModel PrepareListUserRoleModel(UserRole userRole)
        {
            var model = userRole.ToModel();

            if (userRole.SystemName != SystemUserRoleNames.SiteOwner)
            {
                model.Actions.Add(new ModelActionLink
                {
                    Alt = "Edit",
                    Icon = Url.Content("~/Areas/Admin/Content/images/icon-edit.png"),
                    Target = Url.Action("edit", new {id = userRole.Id})
                });
            }

            if (!model.IsSystemRole)
                model.Actions.Add(new DeleteActionLink(userRole.Id));

            return model;
        }
        public static UserRole ToEntity(this UserRoleModel model)
        {
            if (model == null)
                return null;

            var entity = new UserRole
            {
                Name = model.Name,
                SystemName = model.SystemName
            };

            return entity;
        }
        public void InstallUsers(User siteOwner)
        {
            var siteOwnerRole = new UserRole
            {
                Name = "Site Owner",
                SystemName = SystemUserRoleNames.SiteOwner
            };

            var administratorRole = new UserRole
            {
                Name = "Administrators",
                SystemName = SystemUserRoleNames.Administrators
            };

            var moderatorRole = new UserRole
            {
                Name = "Moderators",
                SystemName = SystemUserRoleNames.Moderators
            };

            var memberRole = new UserRole
            {
                Name = "Members",
                SystemName = SystemUserRoleNames.Members
            };

            var roles = new List<UserRole>
            {
                siteOwnerRole,
                administratorRole,
                moderatorRole,
                memberRole
            };

            // Insert each roles
            foreach (var role in roles)
            {
                role.Active = true;
                role.CreatedDate = DateTime.Now;
                role.IsSystemRole = true;
                _userRoleRepository.Insert(role);
            }

            // Create the site owner
            siteOwner.Active = true;
            siteOwner.CreatedDate = DateTime.Now;
            siteOwner.LastLoginDate = DateTime.Now;
            siteOwner.UserRoles.Add(siteOwnerRole);
            _userRepository.Insert(siteOwner);

            // Login the user
            _authService.SignIn(siteOwner, true);
        }