Browse Source

Added BusyText to the button tag helper.

pull/279/head
Halil İbrahim Kalkan 9 years ago
parent
commit
0b0c823010
  1. 2
      src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Button/AbpButtonTagHelper.cs
  2. 27
      src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Button/AbpButtonTagHelperService.cs

2
src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Button/AbpButtonTagHelper.cs

@ -4,6 +4,8 @@
{
public AbpButtonType ButtonType { get; set; } = AbpButtonType.Default;
public string BusyText { get; set; }
public AbpButtonTagHelper(AbpButtonTagHelperService service)
: base(service)
{

27
src/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap/TagHelpers/Button/AbpButtonTagHelperService.cs

@ -20,28 +20,41 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Button
public override void Process(TagHelperContext context, TagHelperOutput output)
{
output.TagName = "button";
AddType(output);
AddButtonClasses(output);
AddButtonBusyText(context, output);
}
private static void AddType(TagHelperOutput output)
{
if (output.Attributes.ContainsName("type"))
{
return;
}
output.Attributes.Add("type", "button");
}
private void AddButtonClasses(TagHelperOutput output)
{
output.Attributes.AddClass("btn");
if (TagHelper.ButtonType != AbpButtonType.Default)
{
output.Attributes.AddClass("btn-" + TagHelper.ButtonType.ToString().ToLowerInvariant());
}
AddButtonBusyText(context, output);
}
protected virtual void AddButtonBusyText(TagHelperContext context, TagHelperOutput output)
{
if (output.Attributes.ContainsName(DataBusyTextAttributeName))
var busyText = TagHelper.BusyText ?? L["ProcessingWithThreeDot"];
if (busyText.IsNullOrWhiteSpace())
{
return;
}
if (string.Equals(output.Attributes["type"]?.Value.ToString(), "submit", StringComparison.OrdinalIgnoreCase))
{
output.Attributes.SetAttribute(DataBusyTextAttributeName, L["ProcessingWithThreeDot"]);
}
output.Attributes.SetAttribute(DataBusyTextAttributeName, busyText);
}
}
}
Loading…
Cancel
Save