protected virtual void EnsureFacets(CommerceFilterOptionViewModel model, string facets, IContent content) { if (model.FacetGroups == null) { model.FacetGroups = CreateFacetGroups(facets); } }
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { bindingContext.ModelName = "FilterOption"; var model = new CommerceFilterOptionViewModel(); try { var cmsModel = (CmsFilterOptionViewModel)base.BindModel(controllerContext, bindingContext); model = cmsModel as CommerceFilterOptionViewModel; if (cmsModel != null && model == null) { model = new CommerceFilterOptionViewModel(); } } catch { model = new CommerceFilterOptionViewModel(); } if (model == null) { return(model); } var contentLink = controllerContext.RequestContext.GetContentLink(); IContent content = null; if (!ContentReference.IsNullOrEmpty(contentLink)) { content = _contentLoader.Get <IContent>(contentLink); } var query = controllerContext.HttpContext.Request.QueryString["search"]; var sort = controllerContext.HttpContext.Request.QueryString["sort"]; var facets = controllerContext.HttpContext.Request.QueryString["facets"]; var section = controllerContext.HttpContext.Request.QueryString["t"]; var page = controllerContext.HttpContext.Request.QueryString["p"]; var confidence = controllerContext.HttpContext.Request.QueryString["confidence"]; SetupModel(model, query, sort, section, page, content, confidence); EnsureFacets(model, facets, content); return(model); }