Skip to content

Instantly share code, notes, and snippets.

@sniffdk
Created March 10, 2012 14:50
Show Gist options
  • Save sniffdk/2011647 to your computer and use it in GitHub Desktop.
Save sniffdk/2011647 to your computer and use it in GitHub Desktop.
var fman = DI.Resolve<ShardManager>().Facets;
var years = fman.GetGroupFacets("Dates").Where(x => x.Key.FieldName == "Year").ToList();
var newsTypes = PickerUtil.DecodeValue(node.GetPropertyString("newsTypes"));
var currentYear = Request["year"] ?? "year:";
var currentNewsType = Request["newsType"] ?? "tags:";
var facets = new List<Eksponent.Lucene.Facets.Facet>()
{
fman.Get(FacetKey.FromTermValue(currentYear)),
fman.Get(FacetKey.FromTermValue(currentNewsType))
}.Where(x => x != null).Select(x => x.Index).ToList();
var filter = facets.Any() ? new FacetFilterRestriction.And(facets) : null;
var news = LuceneNode.Query(new DescendantsQuery(StaticNodes.Site.NodeId, nodeTypeAliases: new[] {"NewsPage"})
{
Count = 200,
FacetFilter = filter,
Sort = new Sort(new SortField("ContentDate", SortField.DOUBLE, true))
}).Select(x => x.Item).ToList();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment