using System.Linq; using InABox.Core; namespace Comal.Classes { public class JobFormLookups : ILookupDefinition, ILookupDefinition { public Filter DefineFilter(Job[] items) { // Get all FillableFormTypes where 2nd parameter is typeof(JobFormDefinition) return new Filter(x => x.Active).IsEqualTo(true).And(x => x.AppliesTo).IsEqualTo("Job"); } Columns ILookupDefinition.DefineFilterColumns() => new Columns(); public Filter DefineFilter(JobForm[] items) { if (items == null || items.Length != 1) return new Filter(x => x.ID).IsEqualTo(CoreUtils.FullGuid); return new Filter(x => x.ID).InQuery(new Filter(x => x.Job.ID).IsEqualTo(items.First().Parent.ID), x => x.Form.ID); } Columns ILookupDefinition.DefineFilterColumns() => new Columns(x => x.Parent.ID); } }