namespace InABox.Core
{
    public class UserLookups : EntityLookup<User>
    {
        public override Columns<User> DefineColumns()
        {
            return base.DefineColumns()
                .Add(x => x.UserID)
                .Add(x => x.Description);
        }

        //public string FormatLookup(Dictionary<string, object> values, IEnumerable<String> exclude)
        //{
        //    return LookupFactory.DefaultFormatLookup(values, exclude.Concat(new string[] { "ID" }));
        //}


        public override Filter<User> DefineFilter()
        {
            var filter = new Filter<User>(x=>x.Disabled).IsEqualTo(false);
            return filter;
        }

        public override SortOrder<User> DefineSortOrder()
        {
            return new SortOrder<User>(x => x.UserID);
        }
    }
}