public override void Configure(HtmlConventionsManager conventions) { var editors = conventions.Editors; editors.If(d => d.Name.ToLower().Contains("email")) .Modify((tag, info) => { tag.FirstInputTag().EmailMode(); return(tag); }); editors.If(d => { var name = d.Name.ToLower(); return(name.Contains("password") || name.Contains("pwd")); }) .Modify((tag, info) => { var input = tag.FirstInputTag(); input.PasswordMode(); if (!info.HasAttribute <PopulatePasswordAttribute>()) { input.Value(null); } return(tag); }); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Validation.Always.Modify((tag, model) => { return(tag.AddClass("bg-danger")); }); }
public override void Configure(HtmlConventionsManager conventions) { var editors = conventions.Editors; editors.If(d => d.Name.ToLower().Contains("email")) .Modify((tag, info) => { tag.FirstInputTag().EmailMode(); return tag; }); editors.If(d => { var name=d.Name.ToLower(); return name.Contains("password") || name.Contains("pwd"); }) .Modify((tag, info) => { var input = tag.FirstInputTag(); input.PasswordMode(); if (!info.HasAttribute<PopulatePasswordAttribute>()) { input.Value(null); } return tag; }); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Displays.Ignore(d => d.HasAttribute<IgnoreAttribute>()); conventions.Displays.IfNotCustomType() .Modify(AddFieldLabel); }
public override void Configure(HtmlConventionsManager conventions) { var l = conventions.Labels; //l.Always.Modify((tag, model) => //{ // return tag.AddClass("control-label"); //}); }
public static void Run() { //predefined modifiers which mimic default asp.net mvc templating behaviour HtmlConventionsManager.LoadModule(new DataAnnotationModifiers(), new CommonEditorModifiers(), new SemanticModifiers() /*,new TwitterBootstrapFormElements()*/); //load all conventions defined in the assembly HtmlConventionsManager.LoadModules(typeof(ConfigTask_HtmlConventions).Assembly); HtmlConventionsManager.LoadWidgets(typeof(ConfigTask_HtmlConventions).Assembly); //predefined builders for use with model annotations HtmlConventionsManager.LoadModule(new DataAnnotationBuilders(), new CommonHtmlBuilders()); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Editors .ForModelWithAttribute <HiddenInputAttribute>() .Build(info => { return(new HiddenTag() .Name(info.HtmlName) .IdFromName() .Value(info.ValueAsString)); }) ; }
public override void Configure(HtmlConventionsManager conventions) { conventions.Editors .ForModelWithAttribute<HiddenInputAttribute>() .Build(info => { return new HiddenTag() .Name(info.HtmlName) .IdFromName() .Value(info.ValueAsString); }) ; }
public override void Configure(HtmlConventionsManager conventions) { //conventions.Editors // .If(info => info.Type.Is<DateTime>() || info.Type.Is<DateTime?>()) // .Modify((tag, info) => // { // tag.FirstInputTag().Attr("type", "date"); // return tag; // }); conventions.Editors.IfNotCustomType().Modify(AddValidationAttributes); conventions.Editors.IfNotCustomType().Modify(AddEditorLabel); conventions.Editors.IfNotCustomType().Modify(AddValidationMessage); conventions.Editors.Ignore(d => d.HasAttribute<IgnoreAttribute>()); }
public override void Configure(HtmlConventionsManager conventions) { //conventions.Editors // .If(info => info.Type.Is<DateTime>() || info.Type.Is<DateTime?>()) // .Modify((tag, info) => // { // tag.FirstInputTag().Attr("type", "date"); // return tag; // }); conventions.Editors.IfNotCustomType().Modify(AddValidationAttributes); conventions.Editors.IfNotCustomType().Modify(AddEditorLabel); conventions.Editors.IfNotCustomType().Modify(AddValidationMessage); conventions.Editors.Ignore(d => d.HasAttribute <IgnoreAttribute>()); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Editors .If(info => info.Type.DerivesFrom <HttpPostedFileBase>()) .Build(DefaultBuilders.FileUploadBuilder); conventions.Labels .If(info => info.Type.DerivesFrom <HttpPostedFileBase>()) .Build(DefaultBuilders.LabelBuilder); conventions.Editors .ForType <bool>() .Build(DefaultBuilders.MvcCheckBoxBuilder); conventions.Editors .ForType <bool?>() .Build(DefaultBuilders.MvcCheckBoxBuilder); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Editors .If(info => info.Type.DerivesFrom<HttpPostedFileBase>()) .Build(DefaultBuilders.FileUploadBuilder); conventions.Labels .If(info => info.Type.DerivesFrom<HttpPostedFileBase>()) .Build(DefaultBuilders.LabelBuilder); conventions.Editors .ForType<bool>() .Build(DefaultBuilders.MvcCheckBoxBuilder); conventions.Editors .ForType<bool?>() .Build(DefaultBuilders.MvcCheckBoxBuilder); }
public override void Configure(HtmlConventionsManager conventions) { var e = conventions.Editors; // TwitterBootstrap(e); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Displays.Ignore(d => d.HasAttribute <IgnoreAttribute>()); conventions.Displays.IfNotCustomType() .Modify(AddFieldLabel); }
public override void Configure(HtmlConventionsManager conventions) { Editors(conventions.Editors); Labels(conventions.Labels); }
public override void Configure(HtmlConventionsManager conventions) { conventions.Labels .ForModelWithAttribute <DisplayAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute <DisplayAttribute>(); if (!attr.Name.IsNullOrEmpty()) { tag.Text(attr.Name); } return(tag); }); conventions.Editors .ForModelWithAttribute <DisplayAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute <DisplayAttribute>(); if (!attr.Prompt.IsNullOrEmpty()) { tag.FirstInputTag().Attr("placeholder", attr.Prompt); } return(tag); }); conventions.Editors .ForModelWithAttribute <DataTypeAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute <DataTypeAttribute>(); var input = tag.FirstInputTag(); if (attr.DataType == DataType.Text || attr.DataType == DataType.MultilineText) { input.MultilineMode(); return(tag); } if (attr.DataType == DataType.Password) { input.PasswordMode(); if (!info.HasAttribute <PopulatePasswordAttribute>()) { input.Value(null); } return(tag); } if (attr.DataType == DataType.EmailAddress) { input.EmailMode(); return(tag); } if (attr.DataType == DataType.Upload) { input.FileUploadMode(); return(tag); } return(tag); }); conventions.Editors .ForModelWithAttribute <StringLengthAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute <StringLengthAttribute>(); var input = tag.FirstInputTag(); input.Attr("maxlength", attr.MaximumLength) .Attr("size", attr.MaximumLength <= 100?attr.MaximumLength - 2:98); if (attr.MinimumLength > 0) { input.Attr("minlength", attr.MinimumLength); } return(tag); }) .If(m => { int tc; if (!m.Type.IsNullable()) { tc = (int)Type.GetTypeCode(m.Type); } else { tc = (int)Type.GetTypeCode(Nullable.GetUnderlyingType(m.Type)); } //number type range return(tc >= 5 && tc <= 15); }) .Modify((tag, info) => { var input = tag.FirstInputTag(); if (input.Attr("type") != "hidden") { input.NumberMode(); } return(tag); }) ; }
public abstract void Configure(HtmlConventionsManager conventions);
public override void Configure(HtmlConventionsManager conventions) { }
public override void Configure(HtmlConventionsManager conventions) { conventions.Labels .ForModelWithAttribute<DisplayAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute<DisplayAttribute>(); if (!attr.Name.IsNullOrEmpty()) { tag.Text(attr.Name); } return tag; }); conventions.Editors .ForModelWithAttribute<DisplayAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute<DisplayAttribute>(); if (!attr.Prompt.IsNullOrEmpty()) { tag.FirstInputTag().Attr("placeholder", attr.Prompt); } return tag; }); conventions.Editors .ForModelWithAttribute<DataTypeAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute<DataTypeAttribute>(); var input = tag.FirstInputTag(); if (attr.DataType == DataType.Text || attr.DataType == DataType.MultilineText) { input.MultilineMode(); return tag; } if (attr.DataType == DataType.Password) { input.PasswordMode(); if (!info.HasAttribute<PopulatePasswordAttribute>()) { input.Value(null); } return tag; } if (attr.DataType == DataType.EmailAddress) { input.EmailMode(); return tag; } if (attr.DataType == DataType.Upload) { input.FileUploadMode(); return tag; } return tag; }); conventions.Editors .ForModelWithAttribute<StringLengthAttribute>() .Modify((tag, info) => { var attr = info.GetAttribute<StringLengthAttribute>(); var input=tag.FirstInputTag(); input.Attr("maxlength", attr.MaximumLength) .Attr("size",attr.MaximumLength<=100?attr.MaximumLength-2:98); if (attr.MinimumLength > 0) input.Attr("minlength", attr.MinimumLength); return tag; }) .If(m => { int tc; if (!m.Type.IsNullable()) { tc = (int) Type.GetTypeCode(m.Type); } else { tc = (int) Type.GetTypeCode(Nullable.GetUnderlyingType(m.Type)); } //number type range return (tc >= 5 && tc <= 15); } ) .Modify((tag, info) => { var input = tag.FirstInputTag(); if(input.Attr("type")!="hidden") input.NumberMode(); return tag; }) ; }
public abstract void Configure(HtmlConventionsManager conventions);
public override void Configure(HtmlConventionsManager conventions) { Editors(conventions.Editors); Labels(conventions.Labels); }