/// <summary> /// Renders the Settings & Styles associated with the current <see cref="JObject"/>. /// </summary> /// <param name="helper">The <see cref="HtmlHelper"/> instance.</param> /// <param name="contentItem">The <see cref="JObject"/> item which holds the configuration for Settings & Styles. This is typically an area or row in the Umbraco Grid.</param> /// <param name="attributesResolver">Optional Attributes Resolver: this provides bespoke logic for grouping attributes together.</param> /// <param name="attributeValueResolvers">Optional Attribute Value Resolver: Once attributes are grouped Attribute Value Resolvers can tailor the output of a given grouping.</param> /// <param name="defaultAttributeValueResolver">Optional Default Attribute Value Resolver: If an <see cref="IGridSettingsAttributeValueResolver"/> can not be found for a specific property this <see cref="IGridSettingsAttributeValueResolver"/> is used insteads.</param> /// <returns>A <see cref="MvcHtmlString" /> containing all the resolved attributes with their values.</returns> public static MvcHtmlString RenderGridSettingAttributes(this HtmlHelper helper, JObject contentItem, IGridSettingsAttributesResolver attributesResolver = null, IDictionary <string, IGridSettingsAttributeValueResolver> attributeValueResolvers = null, IGridSettingsAttributeValueResolver defaultAttributeValueResolver = null) { var attributesService = new GridSettingsAttributesService(attributesResolver, defaultAttributeValueResolver, attributeValueResolvers); return(helper.RenderGridSettingAttributes(contentItem, attributesService)); }
public GridSettingsAttributesService(IGridSettingsAttributesResolver attributesResolver = null, IGridSettingsAttributeValueResolver defaultAttributeValueResolver = null, IDictionary <string, IGridSettingsAttributeValueResolver> attributeValueResolvers = null) { _attributesResolver = attributesResolver ?? new GroupByKeyGridSettingsAttributesResolver(); _defaultAttributeValueResolver = defaultAttributeValueResolver ?? new StringConcatGridSettingValueResolver(); _attributeValueResolvers = attributeValueResolvers ?? new Dictionary <string, IGridSettingsAttributeValueResolver>(); }