public static MvcHtmlString MultipleItemPickerFieldFor <TModel>( this HtmlHelper <TModel> html, Expression <Func <TModel, IEnumerable <int> > > expression, IEnumerable <ListItem> selectedItemList, EntityDataListArgs entityDataListArgs, Dictionary <string, object> htmlAttributes = null ) => MvcHtmlString.Create(string.Format( html.FieldTemplate(ExpressionHelper.GetExpressionText(expression), GetMetaData(html, expression).DisplayName), html.MultipleItemPickerFor(expression, selectedItemList, entityDataListArgs, htmlAttributes).ToHtmlString() ));
public static MvcHtmlString SingleItemPickerFieldFor <TModel, TValue>( this HtmlHelper <TModel> source, Expression <Func <TModel, TValue> > expression, QPSelectListItem selected, EntityDataListArgs entityDataListArgs, ControlOptions options ) => MvcHtmlString.Create(string.Format( source.FieldTemplate(ExpressionHelper.GetExpressionText(expression), GetMetaData(source, expression).DisplayName), source.SingleItemPickerFor(expression, selected, entityDataListArgs, options) ));
public static MvcHtmlString CheckboxListFieldFor <TModel>( this HtmlHelper <TModel> html, Expression <Func <TModel, IList <QPCheckedItem> > > expression, IEnumerable <QPSelectListItem> list, EntityDataListArgs entityDataListArgs, Dictionary <string, object> htmlAttributes, RepeatDirection repeatDirection = RepeatDirection.Vertical ) => MvcHtmlString.Create(string.Format( html.FieldTemplate(ExpressionHelper.GetExpressionText(expression), GetMetaData(html, expression).DisplayName), html.QpCheckBoxListFor(expression, list, entityDataListArgs, htmlAttributes, repeatDirection) ));
public static MvcHtmlString RadioFieldFor <TModel, TValue>( this HtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, IEnumerable <QPSelectListItem> list, RepeatDirection repeatDirection = RepeatDirection.Horizontal, EntityDataListArgs entityDataListArgs = null, ControlOptions options = null ) => MvcHtmlString.Create(string.Format( html.FieldTemplate(ExpressionHelper.GetExpressionText(expression), GetMetaData(html, expression).DisplayName), html.QpRadioButtonListFor(expression, list, repeatDirection, entityDataListArgs, options) ));
public static IHtmlContent MultipleItemPickerFieldFor <TModel>( this IHtmlHelper <TModel> html, Expression <Func <TModel, IEnumerable <int> > > expression, IEnumerable <ListItem> selectedItemList, EntityDataListArgs entityDataListArgs, Dictionary <string, object> htmlAttributes = null) { return(html.FieldTemplate( html.MultipleItemPickerFor(expression, selectedItemList, entityDataListArgs, htmlAttributes), html.ModelExpressionProvider().GetExpressionText(expression), GetMetaData(html, expression).DisplayName)); }
public static IHtmlContent SingleItemPickerFieldFor <TModel, TValue>( this IHtmlHelper <TModel> source, Expression <Func <TModel, TValue> > expression, QPSelectListItem selected, EntityDataListArgs entityDataListArgs, ControlOptions options) { return(source.FieldTemplate( source.SingleItemPickerFor(expression, selected, entityDataListArgs, options), source.ModelExpressionProvider().GetExpressionText(expression), GetMetaData(source, expression).DisplayName)); }
public void SetMultiplePickerOptions(string name, string id, EntityDataListArgs eventArgs) { HtmlAttributes["id"] = (HtmlAttributes.ContainsKey("id") ? HtmlAttributes["id"].ToString() : id) + "_list"; HtmlAttributes.AddCssClass(HtmlHelpersExtensions.MultipleItemPickerClassName); HtmlAttributes.AddCssClass(HtmlHelpersExtensions.SelfClearFloatsClassName); if (!Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); } HtmlAttributes.AddData("count_limit", QPConfiguration.Options.RelationCountLimit); SetDataListOptions(name, eventArgs); }
public static IHtmlContent CheckboxListFieldFor <TModel>( this IHtmlHelper <TModel> html, Expression <Func <TModel, IList <QPCheckedItem> > > expression, IEnumerable <QPSelectListItem> list, EntityDataListArgs entityDataListArgs, Dictionary <string, object> htmlAttributes, RepeatDirection repeatDirection = RepeatDirection.Vertical) { return(html.FieldTemplate( html.QpCheckBoxListFor(expression, list, entityDataListArgs, htmlAttributes, repeatDirection), html.ModelExpressionProvider().GetExpressionText(expression), GetMetaData(html, expression).DisplayName)); }
public static IHtmlContent RadioFieldFor <TModel, TValue>( this IHtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, IEnumerable <QPSelectListItem> list, RepeatDirection repeatDirection = RepeatDirection.Horizontal, EntityDataListArgs entityDataListArgs = null, ControlOptions options = null) { return(html.FieldTemplate( html.QpRadioButtonListFor(expression, list, repeatDirection, entityDataListArgs, options), html.ModelExpressionProvider().GetExpressionText(expression), GetMetaData(html, expression).DisplayName)); }
internal static MvcHtmlString Relation(this HtmlHelper source, string id, IEnumerable <QPSelectListItem> list, ControlOptions options, Field field, int articleId, bool isListOverflow) { const string entityTypeCode = EntityTypeCode.Article; var baseField = field.GetBaseField(articleId); var contentId = baseField.RelateToContentId ?? 0; var fieldId = baseField.Id; var filter = baseField.GetRelationFilter(articleId); var relatedToContent = baseField.RelatedToContent; var addNewActionCode = ActionCode.None; var readActionCode = ActionCode.None; if (relatedToContent != null) { if (!relatedToContent.IsVirtual) { readActionCode = ActionCode.EditArticle; if (relatedToContent.IsAccessible(ActionTypeCode.Update)) { addNewActionCode = ActionCode.AddNewArticle; } } else { readActionCode = ActionCode.ViewVirtualArticle; } } var listArgs = new EntityDataListArgs { EntityTypeCode = entityTypeCode, ParentEntityId = contentId, EntityId = articleId, ListId = fieldId, AddNewActionCode = addNewActionCode, ReadActionCode = readActionCode, SelectActionCode = baseField.RelationType == RelationType.OneToMany ? ActionCode.SelectArticle : ActionCode.MultipleSelectArticle, EnableCopy = field.ExactType != FieldExactTypes.M2ORelation, ReadDataOnInsert = field.OrderByTitle || field.OrderFieldId.HasValue || field.FieldTitleCount > 1, MaxListHeight = 200, MaxListWidth = 350, ShowIds = true, Filter = filter }; return(source.Relation(id, list, options, baseField.RelationType, isListOverflow, listArgs)); }
public void SetSinglePickerOptions(string name, string id, EntityDataListArgs entityDataListArgs, bool ignoreIdSet = false) { if (!ignoreIdSet) { HtmlAttributes["id"] = id; } else { HtmlAttributes.Add("data-bind", "value: " + name + "Id," + " attr: {id: '" + id + "'+$index(), name:'" + id + "'+$index()}"); } HtmlAttributes.AddCssClass(HtmlHelpersExtensions.SingleItemPickerClassName); HtmlAttributes.AddCssClass(HtmlHelpersExtensions.SelfClearFloatsClassName); if (!Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); } SetDataListOptions(name, entityDataListArgs); }
public void SetCheckBoxListOptions(string name, string id, IEnumerable <QPSelectListItem> list, RepeatDirection repeatDirection, EntityDataListArgs entityDataListArgs) { if (!HtmlAttributes.ContainsKey("id")) { HtmlAttributes.Add("id", id); } HtmlAttributes.AddCssClass(HtmlHelpersExtensions.CheckboxsListClassName); HtmlAttributes.AddCssClass(repeatDirection == RepeatDirection.Vertical ? HtmlHelpersExtensions.VerticalDirectionClassName : HtmlHelpersExtensions.HorizontalDirectionClassName); if (!Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); } SetDataListOptions(name, entityDataListArgs); }
public void SetDropDownOptions(string name, string id, IList <QPSelectListItem> list, EntityDataListArgs entityDataListArgs) { if (!HtmlAttributes.ContainsKey("id")) { HtmlAttributes.Add("id", id); } HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DropDownListClassName); if (list.Where(i => i.HasDependentItems).ToList().Count > 0) { var panelsHash = QPSelectListItem.GetPanelHash(id, list); HtmlAttributes.AddData("switch_for", $"{{{panelsHash}}}"); HtmlAttributes.AddData("is_radio", bool.FalseString.ToLowerInvariant()); } if (!Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); if (!HtmlAttributes.ContainsKey("disabled")) { HtmlAttributes.Add("disabled", "disabled"); HtmlAttributes.AddData("list_enabled", "false"); } } SetDataListOptions(name, entityDataListArgs); }
private void SetDataListOptions(string name, EntityDataListArgs entityDataListArgs) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DataListClassName); HtmlAttributes.AddData("list_item_name", name); if (entityDataListArgs != null) { HtmlAttributes.AddData("entity_type_code", entityDataListArgs.EntityTypeCode); HtmlAttributes.AddData("parent_entity_id", entityDataListArgs.ParentEntityId); HtmlAttributes.AddData("entity_id", entityDataListArgs.EntityId); if (entityDataListArgs.ListId != 0) { HtmlAttributes.AddData("list_id", entityDataListArgs.ListId); } if (entityDataListArgs.AddNewActionCode != ActionCode.None) { HtmlAttributes.AddData("add_new_action_code", entityDataListArgs.AddNewActionCode); } if (entityDataListArgs.ReadActionCode != ActionCode.None) { HtmlAttributes.AddData("read_action_code", entityDataListArgs.ReadActionCode); } if (entityDataListArgs.SelectActionCode != ActionCode.None) { HtmlAttributes.AddData("select_action_code", entityDataListArgs.SelectActionCode); } if (entityDataListArgs.MaxListWidth != 0) { HtmlAttributes.AddData("max_list_width", entityDataListArgs.MaxListWidth); } if (entityDataListArgs.MaxListHeight != 0) { HtmlAttributes.AddData("max_list_height", entityDataListArgs.MaxListHeight); } if (!Enabled) { HtmlAttributes.AddData("list_enabled", "false"); } if (entityDataListArgs.ShowIds) { HtmlAttributes.AddData("show_ids", "true"); } if (!string.IsNullOrEmpty(entityDataListArgs.Filter)) { HtmlAttributes.AddData("filter", entityDataListArgs.Filter); } if (entityDataListArgs.IsCollapsable) { HtmlAttributes.AddData("is_collapsable", "true"); } if (!entityDataListArgs.EnableCopy) { HtmlAttributes.AddData("enable_copy", "false"); } if (entityDataListArgs.ReadDataOnInsert) { HtmlAttributes.AddData("read_data_on_insert", "true"); } } }
public void SetRadioButtonListOptions(string name, string id, IList <QPSelectListItem> list, RepeatDirection repeatDirection, EntityDataListArgs entityDataListArgs) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.RadioButtonsListClassName); HtmlAttributes.AddCssClass(repeatDirection == RepeatDirection.Vertical ? HtmlHelpersExtensions.VerticalDirectionClassName : HtmlHelpersExtensions.HorizontalDirectionClassName); if (!Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); } if (list.Where(item => item.HasDependentItems).ToList().Count > 0) { var panelsHash = QPSelectListItem.GetPanelHash(id, list); HtmlAttributes.AddData("switch_for", $"{{{panelsHash}}}"); HtmlAttributes.AddData("is_radio", bool.TrueString.ToLowerInvariant()); } HtmlAttributes.AddData("field_form_name", name); }
public void SetListBoxOptions(string name, string id, IEnumerable <QPSelectListItem> list, EntityDataListArgs entityDataListArgs) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.ListboxClassName); if (Enabled) { HtmlAttributes.AddCssClass(HtmlHelpersExtensions.DisabledClassName); if (!HtmlAttributes.ContainsKey("disabled")) { HtmlAttributes.Add("disabled", "disabled"); } } }