using System.Collections.Generic;
using System.Linq;
namespace WePlatform.Views.Shared.Modals
{
public class ModalBodyViewModel
{
public ModalBodyViewModel(List inputs, string formId = "form", string modalId = "modalId", string labelLayoutDefaultClass = "", string inputLayoutDefaultClass = "", string divClass = "form-group row", List specials = null)
{
FormId = formId;
ModalId = modalId;
_inputs = inputs;
LabelLayoutDefaultClass = labelLayoutDefaultClass;
InputLayoutDefaultClass = inputLayoutDefaultClass;
Specials = specials;
DivClass = divClass;
}
public string FormId { get; set; }
public string ModalId { get; set; }
public string DivClass { get; set; }
public string LabelLayoutDefaultClass { get; set; }
public string InputLayoutDefaultClass { get; set; }
private readonly List _inputs;
public List Inputs => _inputs.Select(SetDefault).ToList();
public List Specials { get; set; }
private Input SetDefault(Input input)
{
if (string.IsNullOrEmpty(input.LabelLayoutClass))
{
input.LabelLayoutClass = LabelLayoutDefaultClass;
}
if (string.IsNullOrEmpty(input.InputLayoutClass))
{
input.InputLayoutClass = InputLayoutDefaultClass;
}
if (string.IsNullOrEmpty(input.DivClass))
{
input.DivClass = DivClass;
}
input.DefaultTarget = $"#{ModalId}";
return input;
}
}
}