Example #1
0
        public override IContentSecurityDescriptor GetContentSecurityDescriptor()
        {
            if (!string.IsNullOrWhiteSpace(EditorGroup))
            {
                _acl = GetAcl(EditorGroup);
            }

            return(_acl ?? base.GetContentSecurityDescriptor());
        }
Example #2
0
        private ContentAccessControlList GetAcl(string groupName)
        {
            var acl = new ContentAccessControlList {
                IsInherited = false
            };

            var parent = DataFactory.Instance.Get <VideoFolder>(ParentLink);

            if (parent != null)
            {
                foreach (var entry in parent.GetContentSecurityDescriptor().Entries)
                {
                    acl.AddEntry(entry);
                }
            }

            if (!acl.Contains(groupName))
            {
                acl.AddEntry(new AccessControlEntry(groupName, AccessLevel.Read | AccessLevel.Create | AccessLevel.Edit | AccessLevel.Delete | AccessLevel.Publish));
            }

            return(acl);
        }