Exemplo n.º 1
0
        public override void Process(GetPlaceholderRenderingsArgs args, PlaceholderRuleContext ruleContext)
        {
            if (args.PlaceholderRenderings == null || ruleContext.BlockedRenderings.Count == 0 || !ruleContext.IsEditable)
            {
                return;
            }

            var comparer = new ItemIdComparer();

            args.PlaceholderRenderings.RemoveAll(i => ruleContext.BlockedRenderings.Contains(i, comparer));
        }
Exemplo n.º 2
0
        public override void Process(GetPlaceholderRenderingsArgs args, PlaceholderRuleContext ruleContext)
        {
            if (ruleContext.AllowedRenderings.Count == 0 && !ruleContext.IsEditable)
            {
                return;
            }

            var itemIdComparer = new ItemIdComparer();

            args.PlaceholderRenderings = args.PlaceholderRenderings ?? new List <Item>();

            foreach (var allowedRendering in ruleContext.AllowedRenderings)
            {
                if (!args.PlaceholderRenderings.Contains(allowedRendering, itemIdComparer))
                {
                    args.PlaceholderRenderings.Add(allowedRendering);
                }
            }
        }