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)); }
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); } } }