btcpayserver/BTCPayServer/Views/Shared/Forms/FieldSetElement.cshtml
Andrew Camilleri 60d6e98c67
Form System Flexibility improvements (#4774)
* Introduce very flexible form input system

* Refactorings after rebase

* Test fix

* Update BTCPayServer/Forms/FormDataService.cs

---------

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2023-04-04 11:01:34 +09:00

18 lines
659 B
Text

@using BTCPayServer.Forms
@using Microsoft.AspNetCore.Mvc.TagHelpers
@inject FormComponentProviders FormComponentProviders
@model BTCPayServer.Abstractions.Form.Field
@if (!Model.Constant)
{
<fieldset>
<legend class="h3 mt-4 mb-3">@Model.Label</legend>
@foreach (var field in Model.Fields)
{
if (FormComponentProviders.TypeToComponentProvider.TryGetValue(field.Type, out var partial) && !string.IsNullOrEmpty(partial.View))
{
field.Name = $"{(string.IsNullOrEmpty(Model.Name)? string.Empty: $"{Model.Name}_")}{field.Name}";
<partial name="@partial.View" for="@field"></partial>
}
}
</fieldset>
}