Files
limanapp/EgwControlCenter.App/Components/Compo/TargetSetup.razor
T
2024-09-21 10:26:46 +02:00

104 lines
3.4 KiB
Plaintext

@using EgwControlCenter.Core
@using EgwControlCenter.Core.Models
@inject AppControlService ACService
@if (PwdOk)
{
<div class="row">
<div class="col-2">
<button class="btn btn-warning btn-lg w-100 shadow" @onclick="DoCancel">Cancel</button>
</div>
<div class="col-4">
<div class="form-floating">
<input type="number" class="form-control fs-5 text-end" @bind="@RefreshPeriod">
<label>Refresh Period <small>(1..3600 sec)</small></label>
</div>
</div>
<div class="col-4">
<div class="form-floating">
<input type="number" class="form-control fs-4 text-end" @bind="@VetoCheck">
<label>Veto Check <small>(1..14'400 minutes)</small></label>
</div>
</div>
<div class="col-2">
<button class="btn btn-success btn-lg w-100 shadow" @onclick="DoSave">Save</button>
</div>
<div class="col-12 my-2">
<table class="table table-striped table-sm text-start shadow border">
<thead>
<tr class="bg-dark bg-gradient text-light">
<th class="text-center" style="width: 2rem;">
<button class="btn btn-primary btn-sm" @onclick="DoCancel"><i class="fa-solid fa-rotate"></i></button>
</th>
<th>Tipo</th>
<th>Path</th>
<th class="text-end" style="width: 3rem;">Enabled</th>
</tr>
</thead>
<tbody>
@foreach (var item in ListRecords)
{
<tr>
<td class="text-center">@item.Idx</td>
<td>@item.ApplicationType</td>
<td>
<input type="text" class="form-control form-control-sm" @bind="@item.BasePath" />
</td>
<td class="text-end">
<div class="form-check form-switch">
<input class="form-check-input" type="checkbox" @bind="@item.IsEnabled">
</div>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
}
else
{
<div class="input-group flex-nowrap">
<span class="input-group-text" id="addon-wrapping">Verify Auth Password</span>
<input type="password" class="form-control" @bind="@SetupPwd">
</div>
}
@code {
protected int RefreshPeriod
{
get => ACService.RefreshPeriod;
set => ACService.RefreshPeriod = value;
}
protected void DoCancel()
{
ACService.DoReloadConfig();
}
protected void DoSave()
{
ACService.DoSaveConfig();
}
private string SetupPwd { get; set; } = "";
private int VetoCheck
{
get => ACService.VetoCheck;
set => ACService.VetoCheck = value;
}
private bool PwdOk
{
get => !string.IsNullOrEmpty(SetupPwd) && SetupPwd == EgwControlCenter.Core.Const.EditPwd;
}
private List<ControlTarget> ListRecords
{
get => ACService.TargetList;
set => ACService.TargetList = value;
}
}