IW4M-Admin/WebfrontCore/Views/Action/_ActionForm.cshtml
2022-04-22 16:56:29 -05:00

67 lines
2.4 KiB
Plaintext

@using Humanizer
@model WebfrontCore.ViewModels.ActionInfo
@{
Layout = null;
}
<h5 class="modal-title mb-10">@Model.Name.Titleize()</h5>
@if (Model.Inputs.Any())
{
<hr class="mb-10"/>
}
<form class="action-form @(Model.ShouldRefresh ? "refreshable" : "")" action="/Action/@Model.Action">
@foreach (var input in Model.Inputs)
{
var inputType = input.Type ?? "text";
var value = input.Value ?? "";
if (input.Type != "hidden")
{
<div class="input-group mb-10">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon-@input.Name">@input.Label</span>
</div>
@if (inputType == "select")
{
<select name="@input.Name" class="form-control" aria-label="@input.Name" aria-describedby="basic-addon-@input.Name">
@foreach (var item in input.Values)
{
<option value="@item.Key">
<color-code value="@item.Value"></color-code>
</option>
}
</select>
}
else if (inputType == "checkbox")
{
<div class="btn-group-toggle" data-toggle="buttons">
<label class="btn btn-primary active">
<input type="checkbox" name="@input.Name" @(input.Checked ? "checked" : "") autocomplete="off">@input.Label
</label>
</div>
}
else
{
<input type="@inputType" name="@input.Name" value="@value" class="form-control @(input.Required ? "required" : "")" placeholder="@input.Placeholder" aria-label="@input.Name" aria-describedby="basic-addon-@input.Name">
}
</div>
}
else
{
<input type="@inputType" name="@input.Name" value="@value" hidden="hidden">
}
}
@if (Model.Inputs.Any())
{
<hr class="mb-10"/>
}
<div class="ml-auto">
<button type="submit" class="btn btn-primary">@Model.ActionButtonLabel</button>
<a href="#" class="btn mr-5" role="button" onclick="halfmoon.toggleModal('actionModal');">Close</a>
</div>
</form>