5d72d21fb1
Update gestione paginazione (visibile solo dove serve) + fix calcolo di alcuni intems male filtrati
207 lines
10 KiB
Plaintext
207 lines
10 KiB
Plaintext
@if (ShowPopup)
|
|
{
|
|
<div class="modal" tabindex="-1" style="display:block" role="dialog">
|
|
<div class="modal-dialog modal-lg">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h3 class="modal-title">Edit User</h3>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close" @onclick="ClosePopup">
|
|
</button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<div class="input-group mb-2">
|
|
<span class="input-group-text">AD UserName</span>
|
|
<input class="form-control text-end" type="text" placeholder="AD Username" @bind="currUser.Username" disabled />
|
|
|
|
</div>
|
|
<div class="input-group mb-2">
|
|
<span class="input-group-text">Cognome</span>
|
|
<input class="form-control text-end" type="text" placeholder="Password" @bind="currUser.Cognome" />
|
|
</div>
|
|
<div class="input-group mb-2">
|
|
<span class="input-group-text">Nome</span>
|
|
<input class="form-control text-end" type="text" placeholder="Password" @bind="currUser.Nome" />
|
|
</div>
|
|
</div>
|
|
<div class="col-6">
|
|
<div class="input-group mb-2">
|
|
<ul class="list-group w-100">
|
|
<li class="list-group-item active">
|
|
<i class="fas fa-user-tag"></i> Ruoli Assegnati
|
|
</li>
|
|
<li class="list-group-item">
|
|
@if (Roles2Add.Count > 0)
|
|
{
|
|
<div class="input-group">
|
|
<select class="form-select" @bind="@NewRoleId">
|
|
<option value="0" disabled>--- Selezionare ---</option>
|
|
@foreach (var item in Roles2Add)
|
|
{
|
|
<option value="@item.RoleID">
|
|
@item.Ruolo
|
|
</option>
|
|
}
|
|
</select>
|
|
@if (NewRoleId > 0)
|
|
{
|
|
<button class="btn btn-sm btn-success" @onclick="(() => AddSelRole())" title="Add Selected Role">
|
|
<i class="fas fa-add"></i>
|
|
</button>
|
|
}
|
|
else
|
|
{
|
|
<button class="btn btn-sm btn-secondary" disabled title="Selezionare Ruolo">
|
|
<i class="fas fa-add"></i>
|
|
</button>
|
|
}
|
|
</div>
|
|
}
|
|
</li>
|
|
@foreach (var item in currUser.Claims.ToList())
|
|
{
|
|
<li class="list-group-item">
|
|
<div class="d-flex justify-content-between">
|
|
<div class="px-1">
|
|
@item.RoleNav.Ruolo
|
|
</div>
|
|
<div class="px-1">
|
|
<button class="btn btn-sm btn-danger" @onclick="(() => DeleteRole(item))" title="Delete Role">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
<span style="color:red">@strError</span>
|
|
<hr />
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-6">
|
|
<button class="btn w-100 btn-success" @onclick="SaveUser" title="Save"><i class="fas fa-check"></i> Save</button>
|
|
</div>
|
|
<div class="col-6">
|
|
<button class="btn w-100 btn-primary" @onclick="ClosePopup"><i class="far fa-window-close"></i> Close</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<div class="d-flex justify-content-between">
|
|
<div class="px-1 text-truncate">
|
|
<h3>User Administration</h3>
|
|
</div>
|
|
<div class="px-1">
|
|
<div class="row">
|
|
<div class="col">
|
|
<div class="input-group">
|
|
<span class="input-group-text"><i class="fas fa-user-tag"></i></span>
|
|
<select class="form-select" @bind="@FiltUserRole">
|
|
<option value="0">--- Tutti ---</option>
|
|
@foreach (var item in RolesList)
|
|
{
|
|
<option value="@item.RoleID">
|
|
@item.Ruolo
|
|
</option>
|
|
}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
@* <div class="col">
|
|
<button class="btn btn-info disabled"><i class="fa-regular fa-envelope"></i> Test Email Send</button>
|
|
</div> *@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="card-body">
|
|
|
|
<table class="table table-sm table-striped table-responsive-md">
|
|
<thead>
|
|
<tr>
|
|
@if (UserHasClaim("SuperUser") || UserHasClaim("Admin"))
|
|
{
|
|
<th></th>
|
|
}
|
|
<th>AD User</th>
|
|
<th>Cognome</th>
|
|
<th>Nome</th>
|
|
<th>Ruolo</th>
|
|
@if (UserHasClaim("SuperUser") || UserHasClaim("Admin"))
|
|
{
|
|
<th></th>
|
|
}
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@foreach (var user in UsersList)
|
|
{
|
|
string mainCss = user.IsActive ? "text-dark" : "text-secondary text-del";
|
|
<tr class="@mainCss">
|
|
@if (UserHasClaim("SuperUser") || UserHasClaim("Admin"))
|
|
{
|
|
<td>
|
|
@if (!ShowPopup)
|
|
{
|
|
<button class="btn btn-sm btn-primary" @onclick="(() => EditUser(user))" title="Edit">
|
|
<i class="fas fa-pen"></i>
|
|
</button>
|
|
}
|
|
else
|
|
{
|
|
<button class="btn btn-sm btn-secondary disabled" title="Edit">
|
|
<i class="fas fa-pen"></i>
|
|
</button>
|
|
}
|
|
|
|
</td>
|
|
}
|
|
<td>@user.Username</td>
|
|
<td>
|
|
@user.Cognome
|
|
</td>
|
|
<td>
|
|
@user.Nome
|
|
</td>
|
|
<td>
|
|
@ShowRoles(user.Claims.ToList())
|
|
</td>
|
|
@if (UserHasClaim("SuperUser") || UserHasClaim("Admin"))
|
|
{
|
|
<td class="text-end">
|
|
@if (!ShowPopup)
|
|
{
|
|
<button class="btn btn-sm btn-danger" @onclick="(() => DeleteUser(user))" title="Delete">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
}
|
|
else
|
|
{
|
|
<button class="btn btn-sm btn-secondary disabled" title="Delete">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
}
|
|
</td>
|
|
}
|
|
</tr>
|
|
}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="card-footer">
|
|
@if (totalCount > numRecord)
|
|
{
|
|
<DataPager PageSize="@numRecord" currPage="@currPage" numRecordChanged="SetNumRec" numPageChanged="SetPage" totalCount="@totalCount" showLoading="@isLoading"></DataPager>
|
|
}
|
|
</div>
|
|
</div> |