Пример #1
0
        private bool HandleSaveOrUpdate(ContentItem item, string[] propertyNames, object[] state)
        {
            if (item == null)
            {
                return(false);
            }

            bool wasAltered = notifier.NotifySaving(item);

            for (int i = 0; i < propertyNames.Length; i++)
            {
                if (propertyNames[i] == "AncestralTrail")
                {
                    string trail = Utility.GetTrail(item.Parent);
                    if (trail != (string)state[i])
                    {
                        state[i]   = trail;
                        wasAltered = true;
                    }
                }
                if (propertyNames[i] == "AlteredPermissions" &&
                    item.AlteredPermissions == N2.Security.Permission.None &&
                    item.AuthorizedRoles.Count > 0)
                {
                    state[i]   = N2.Security.Permission.Read;
                    wasAltered = true;
                }
            }
            return(wasAltered);
        }
Пример #2
0
 public override void SaveOrUpdate(ContentItem entity)
 {
     notifier.NotifySaving(entity);
     if (entity.ID == 0 && entity.Parent != null)
     {
         base.SaveOrUpdate(entity);
         base.SaveOrUpdate(entity.Parent);
     }
     else
     {
         base.SaveOrUpdate(entity);
     }
 }
Пример #3
0
        private bool HandleSaveOrUpdate(ContentItem item, string[] propertyNames, object[] state)
        {
            if (item == null)
            {
                return(false);
            }

            bool wasAltered = notifier.NotifySaving(item);

            for (int i = 0; i < propertyNames.Length; i++)
            {
                if (propertyNames[i] == "AncestralTrail")
                {
                    string trail = Utility.GetTrail(item.Parent);
                    if (trail != (string)state[i])
                    {
                        state[i]   = trail;
                        wasAltered = true;
                    }
                }
            }
            return(wasAltered);
        }