/// <summary> /// Retrieve a page from the provider, convert it into an IViewModel and render it with the specified view /// </summary> /// <returns>MVC ActionResult</returns> public virtual ActionResult PageModel(string url) { url = AddWelcomePageToUrl(url); IPage page = GetPage(url); if (page == null) { throw new HttpException(404, "Page cannot be found"); } IViewModel pageViewModel = ViewModelFactory.BuildViewModel(page); return(View(GetViewName(page), pageViewModel)); }
public override IEnumerable GetPresentationValues(IList <IComponentPresentation> cps, IModelProperty property, IViewModelFactory factory, IContextModel contextModel) { return(cps.Where(cp => { bool result = false; if (cp.ComponentTemplate != null && cp.ComponentTemplate.MetadataFields != null && cp.ComponentTemplate.MetadataFields.ContainsKey("region")) { var region = cp.ComponentTemplate.MetadataFields["region"].Values.Cast <string>().FirstOrDefault(); if (!string.IsNullOrEmpty(region) && region.Contains(Region)) { result = true; } } return result; }) .Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else { model = factory.BuildViewModel(cp, contextModel); } return model; })); }
public override IEnumerable GetPresentationValues(IList <IComponentPresentation> cps, IModelProperty property, IViewModelFactory factory, IContextModel contextModel) { return(cps.Where(cp => { bool result = false; if (cp.ComponentTemplate != null && cp.ComponentTemplate.MetadataFields != null && cp.ComponentTemplate.MetadataFields.ContainsKey("view")) { var view = cp.ComponentTemplate.MetadataFields["view"].Values.FirstOrDefault(); if (view != null && view.StartsWith(ViewPrefix)) { result = true; } } return result; }) .Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else { model = factory.BuildViewModel((cp)); } return model; })); }
protected virtual object BuildModel(IViewModelFactory factory, IModel data, IModelProperty property) { object result = null; if (ComplexTypeMapping != null) { result = factory.BuildMappedModel(data, ComplexTypeMapping); } else { var modelType = GetModelType(data, factory, property); result = modelType != null?factory.BuildViewModel(modelType, data) : null; } return(result); }
public override IEnumerable GetPresentationValues(IList <IComponentPresentation> cps, IModelProperty property, IViewModelFactory factory, IContextModel contextModel) { return(cps.Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else { model = factory.BuildViewModel((cp)); } return model; })); }
public override System.Collections.IEnumerable GetPresentationValues(IList<IComponentPresentationData> cps, IModelProperty property, IViewModelFactory factory) { return cps.Where(cp => { bool result = false; if (cp.Template != null && cp.Template.Metadata != null && cp.Template.Metadata.ContainsKey("view")) { var view = cp.Template.Metadata["view"].Values.Cast<string>().FirstOrDefault(); if (view != null && view.StartsWith(ViewPrefix)) { result = true; } } return result; }) .Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else model = factory.BuildViewModel((cp)); return model; }); }
protected virtual object BuildModel(IViewModelFactory factory, IModel data, IModelProperty property) { object result = null; if (ComplexTypeMapping != null) { result = factory.BuildMappedModel(data, ComplexTypeMapping); } else { var modelType = GetModelType(data, factory, property); result = modelType != null ? factory.BuildViewModel(modelType, data, _contextModel) : null; } return result; }
public override IEnumerable GetPresentationValues(IList<IComponentPresentation> cps, IModelProperty property, IViewModelFactory factory, IContextModel contextModel) { return cps.Where(cp => { bool result = false; if (cp.ComponentTemplate != null && cp.ComponentTemplate.MetadataFields != null && cp.ComponentTemplate.MetadataFields.ContainsKey("region")) { var region = cp.ComponentTemplate.MetadataFields["region"].Values.Cast<string>().FirstOrDefault(); if (!string.IsNullOrEmpty(region) && region.Contains(Region)) { result = true; } } return result; }) .Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else model = factory.BuildViewModel(cp, contextModel); return model; }); }
public override IEnumerable GetPresentationValues(IList<IComponentPresentation> cps, IModelProperty property, IViewModelFactory factory, IContextModel contextModel) { return cps.Select(cp => { object model = null; if (ComplexTypeMapping != null) { model = factory.BuildMappedModel(cp, ComplexTypeMapping); } else model = factory.BuildViewModel((cp)); return model; }); }
public IViewModel BuildViewModel(IModel model) { return(_viewModelFactory.BuildViewModel(model)); }