You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.9 KiB
66 lines
2.9 KiB
@page "/users"
|
|
@using AdminPanel.Models
|
|
|
|
<PageTitle>User Panel</PageTitle>
|
|
|
|
<h1>User Panel</h1>
|
|
|
|
<div id="users-div">
|
|
|
|
<MudOverlay Visible="IsAddingUser" DarkBackground>
|
|
<MudForm id="add-account-form">
|
|
<MudTextField T="string" Label="Name" Required @bind-Value="FormAccountName"/>
|
|
<MudTextField T="string" Label="Email" Required @bind-Value="FormAccountEmail"/>
|
|
<MudTextField T="string" InputType="InputType.Password" Label="Password" Required @bind-Value="FormAccountPassword"/>
|
|
<MudCheckBox T="bool" Label="Is Administrator" @bind-Value="FormAccountIsAdmin"/>
|
|
|
|
<MudButton Variant="Variant.Filled" Color="Color.Secondary" OnClick="@(() => IsAddingUser = false)">Cancel</MudButton>
|
|
<MudButton Variant="Variant.Filled" Color="Color.Primary" OnClick="ConfirmAddAccount">Add Account</MudButton>
|
|
</MudForm>
|
|
</MudOverlay>
|
|
|
|
<div style="display: flex; align-items: center">
|
|
<MudIconButton Icon="@Icons.Material.Filled.Add" OnClick="@(() => IsAddingUser = true)" Color="@Color.Success" Class="add-item-btn"/>
|
|
<MudText Align="Align.Center">Add Account</MudText>
|
|
</div>
|
|
<div style="display: flex; align-items: center">
|
|
<MudIconButton Icon="@Icons.Material.Filled.Remove" OnClick="RemoveSelection" Color="@Color.Error" Class="remove-item-btn"/>
|
|
<MudText Align="Align.Center">Remove Selection</MudText>
|
|
</div>
|
|
|
|
|
|
<MudDataGrid
|
|
T="User"
|
|
MultiSelection="true"
|
|
ServerData="LoadUsersFromServer"
|
|
ColumnResizeMode="ResizeMode.Column"
|
|
RowsPerPage="1"
|
|
ReadOnly="false"
|
|
EditMode="DataGridEditMode.Form"
|
|
@bind-SelectedItems="SelectedItems"
|
|
CommittedItemChanges="OnAccountEdited">
|
|
<Columns>
|
|
<SelectColumn T="User"/>
|
|
<PropertyColumn Property="x => x.Name" Required/>
|
|
<PropertyColumn Property="x => x.Email" Title="Email Address" Required/>
|
|
<TemplateColumn Title="Is Administrator">
|
|
<CellTemplate>
|
|
<MudCheckBox Value="@context.Item!.IsAdmin" ReadOnly/>
|
|
</CellTemplate>
|
|
<EditTemplate>
|
|
<MudText>Is Administrator :</MudText>
|
|
<MudCheckBox @bind-Value="context.Item.IsAdmin"/>
|
|
</EditTemplate>
|
|
</TemplateColumn>
|
|
<PropertyColumn Property="x => x.Id" IsEditable="false"/>
|
|
<TemplateColumn>
|
|
<CellTemplate>
|
|
<MudIconButton Size="Size.Small" Icon="@Icons.Material.Outlined.Edit" OnClick="@context.Actions.StartEditingItemAsync"/>
|
|
</CellTemplate>
|
|
</TemplateColumn>
|
|
</Columns>
|
|
<PagerContent>
|
|
<MudDataGridPager T="User" PageSizeOptions="new[] { 1, 2, 4, 10, 25, 50, 100 }"/>
|
|
</PagerContent>
|
|
</MudDataGrid>
|
|
</div> |