Files
webwindowconfigurator/WebWindowComplex/Compo/CardSashGroup.razor
T
2026-01-19 10:31:08 +01:00

198 lines
8.5 KiB
Plaintext

@using WebWindowComplex.Models
@using static WebWindowComplex.Json.WindowConst
<div class="card shadow-sm rounded mb-4">
<div class="card-header bg-light bg-opacity-25">
<div class="d-flex justify-content-between align-items-center">
<div class="px-2">
<h5>Sash group @(SashList.Count > 1 ? (SashList.IndexOf(CurrSashGroup) + 1) : "")</h5>
</div>
@if (!User)
{
<div class="px-2">
<div class="input-group mb-2 justify-content-center">
<button class="btn btn-outline-secondary btn-sm" @onclick="() => RemoveArea()">Remove sash group</button>
</div>
</div>
}
<div class="px-2">
<button class="btn btn-close" @onclick="ReqClose"></button>
</div>
</div>
</div>
<div class="card-body py-2">
<div class="row">
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">Qty sash</span>
@if (User)
{
<input type="number" readonly class="form-control" value="@SashQty">
}
else
{
<input type="number" class="form-control" @bind="@SashQty">
}
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
@if(User)
{
<span class="input-group-text">Tipology</span>
<input type="text" readonly class="form-control" value="@(CurrSashGroup.OrientationSashTypeList.FirstOrDefault(x => x.Id == OrientationSashTypeIndex).Name)">
}
else
{
<label class="input-group-text">Tipology</label>
<select class="form-select" @bind="@OrientationSashTypeIndex">
@foreach (var orientationSash in CurrSashGroup.OrientationSashTypeList)
{
<option value="@(orientationSash.Id)">@(orientationSash.Name)</option>
}
</select>
}
</div>
</div>
<div class="col-md-12 col-lg-6">
<div class="input-group mb-2">
<span class="input-group-text">Qty bottom rail</span>
@if (User)
{
<input type="number" readonly class="form-control" value="@SashBottomRailQty">
}
else
{
<input type="number" class="form-control" @bind="@SashBottomRailQty">
}
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col-md-12 col-lg-6">
<div class="row justify-content-between align-items-center">
<div class="col d-flex justify-content-start align-items-center">
<h6 class="fw-bold">Hardware</h6>
</div>
</div>
@if (User)
{
<div class="input-group mb-2">
<span class="input-group-text">Family</span>
<input type="text" readonly class="form-control" value="@FamilyHardware">
</div>
<div class="input-group mb-2">
<span class="input-group-text">Type</span>
<input type="text" readonly class="form-control" value="@SelHwType">
</div>
}
else
{
<div class="input-group mb-2">
<label class="input-group-text">Family</label>
<select class="form-select" @bind="@FamilyHardware">
@if (Sash.s_FamilyHardwareList == null || Sash.s_FamilyHardwareList.Count == 0)
{
<option value="000000">CUSTOM</option>
}
else
{
@foreach (var familyHw in Sash.s_FamilyHardwareList)
{
<option value="@familyHw">@familyHw</option>
}
}
</select>
</div>
@if (string.IsNullOrEmpty(CurrSashGroup.SashShape))
{
<div class="input-group mb-2">
<label class="input-group-text">Type</label>
<select class="form-select">
<option value="000000">Custom HW</option>
</select>
</div>
}
else
{
<div class="input-group mb-2">
<label class="input-group-text">Type</label>
<select class="form-select" @bind="SelHwType">
<option value="000000">Custom HW</option>
@foreach (var hlItem in CurrSashGroup.HardwareList)
{
<option value="@hlItem.Id">@hlItem.Description</option>
}
</select>
</div>
}
}
</div>
<div class="col-md-12 col-lg-6">
<AreaHwOption EC_UpdateHwOpt="UpdateOpt"
EC_FirstHwOptionList="FirstHwOptionList">
</AreaHwOption>
</div>
</div>
</div>
</div>
<div class="card shadow-sm rounded mb-4">
<div class="card-body py-2">
<div class="d-flex justify-content-end">
<div class="dropdown">
<button class="btn btn-outline-secondary dropdown-toggle btn-sm" type="button" @onclick="ToggleDropdown">
Measure
</button>
<ul class="dropdown-menu @(isOpen ? "show" : "")" style="min-width:5rem; max-width:10rem">
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.ABSOLUTE)">
Absolute
</button>
</li>
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.PROPORTIONAL)">
Proportional
</button>
</li>
<li>
<button class="dropdown-item" @onclick="() => SetMeasureType(MeasureTypes.PERCENTAGE)">
Percentage
</button>
</li>
</ul>
</div>
</div>
<div class="row">
@for (int i = 0; i < CurrSashGroup.SashList.Count; i++)
{
@if (editMode && currSashDimEdit.Contains(i))
{
<div class="col-12 my-2">
<AreaSash CurrSashDim="CurrSashGroup.SashList[i]"
IndexSash="i"
EditMode="editMode"
EC_UpdateSash="UpdateSash"
EC_UpdateSashDim="UpdateSashDimension"
EC_EditView="EditView">
</AreaSash>
</div>
}
else if(currSashDimEdit.Count == 0)
{
<AreaSash CurrSashDim="CurrSashGroup.SashList[i]"
IndexSash="i"
EditMode="editMode"
EC_UpdateSash="UpdateSash"
EC_UpdateSashDim="UpdateSashDimension"
EC_EditView="EditView">
</AreaSash>
}
}
</div>
</div>
</div>