mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-01-19 05:33:31 +01:00
d5d0be5824
* Editorconfig: Add space_before_self_closing setting This was a difference between the way dotnet-format and Rider format code. See https://www.jetbrains.com/help/rider/EditorConfig_Index.html * Editorconfig: Keep 4 spaces indentation for Swagger JSON files They are all formatted that way, let's keep it like that. * Apply dotnet-format, mostly white-space related changes
52 lines
1.3 KiB
C#
52 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
using BTCPayServer.Abstractions.Form;
|
|
using BTCPayServer.Validation;
|
|
|
|
namespace BTCPayServer.Forms;
|
|
|
|
public class HtmlInputFormProvider : FormComponentProviderBase
|
|
{
|
|
public override void Register(Dictionary<string, IFormComponentProvider> typeToComponentProvider)
|
|
{
|
|
foreach (var t in new[] {
|
|
"text",
|
|
"radio",
|
|
"checkbox",
|
|
"password",
|
|
"file",
|
|
"hidden",
|
|
"button",
|
|
"submit",
|
|
"color",
|
|
"date",
|
|
"datetime-local",
|
|
"month",
|
|
"week",
|
|
"time",
|
|
"email",
|
|
"image",
|
|
"number",
|
|
"range",
|
|
"search",
|
|
"url",
|
|
"tel",
|
|
"reset"})
|
|
typeToComponentProvider.Add(t, this);
|
|
}
|
|
public override string View => "Forms/InputElement";
|
|
|
|
public override void Validate(Form form, Field field)
|
|
{
|
|
if (field.Required)
|
|
{
|
|
ValidateField<RequiredAttribute>(field);
|
|
}
|
|
if (field.Type == "email")
|
|
{
|
|
ValidateField<MailboxAddressAttribute>(field);
|
|
}
|
|
}
|
|
}
|