2017-09-16 01:15:17 +09:00
|
|
|
@model UsersViewModel
|
|
|
|
@{
|
2018-04-19 15:42:12 -05:00
|
|
|
ViewData.SetActivePageAndTitle(ServerNavPages.Users);
|
2021-03-29 22:32:44 -07:00
|
|
|
var nextUserEmailSortOrder = (string)ViewData["NextUserEmailSortOrder"];
|
|
|
|
String userEmailSortOrder = null;
|
|
|
|
switch (nextUserEmailSortOrder)
|
|
|
|
{
|
|
|
|
case "asc":
|
|
|
|
userEmailSortOrder = "desc";
|
|
|
|
break;
|
|
|
|
case "desc":
|
|
|
|
userEmailSortOrder = "asc";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
var sortIconClass = "fa-sort";
|
|
|
|
if (userEmailSortOrder != null)
|
|
|
|
{
|
|
|
|
sortIconClass = $"fa-sort-alpha-{userEmailSortOrder}";
|
|
|
|
}
|
|
|
|
|
|
|
|
var sortByDesc = "Sort by descending...";
|
|
|
|
var sortByAsc = "Sort by ascending...";
|
2017-09-16 01:15:17 +09:00
|
|
|
}
|
|
|
|
|
2021-04-08 15:32:42 +02:00
|
|
|
<div class="d-flex align-items-center justify-content-between mb-4">
|
|
|
|
<h2 class="mb-0">@ViewData["Title"]</h2>
|
|
|
|
<a asp-action="CreateUser" class="btn btn-primary" role="button" id="CreateUser">
|
|
|
|
<span class="fa fa-plus"></span> Add User
|
|
|
|
</a>
|
2019-05-28 08:40:10 -04:00
|
|
|
</div>
|
2021-04-08 15:32:42 +02:00
|
|
|
<form
|
|
|
|
asp-action="ListUsers"
|
|
|
|
asp-route-sortOrder="@(userEmailSortOrder)"
|
|
|
|
>
|
|
|
|
<div class="input-group">
|
|
|
|
<input asp-for="SearchTerm" class="form-control" placeholder="Search by email..." />
|
|
|
|
<div class="input-group-append">
|
|
|
|
<button type="submit" class="btn btn-secondary" title="Search by email">
|
|
|
|
<span class="fa fa-search"></span> Search
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<span asp-validation-for="SearchTerm" class="text-danger"></span>
|
|
|
|
</form>
|
2019-05-28 08:40:10 -04:00
|
|
|
|
2021-04-08 15:32:42 +02:00
|
|
|
<table class="table table-sm">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th>
|
|
|
|
<a
|
|
|
|
asp-action="ListUsers"
|
|
|
|
asp-route-sortOrder="@(nextUserEmailSortOrder ?? "asc")"
|
|
|
|
class="text-nowrap"
|
|
|
|
title="@(nextUserEmailSortOrder == "desc" ? sortByAsc : sortByDesc)"
|
|
|
|
>
|
|
|
|
Email
|
|
|
|
<span class="fa @(sortIconClass)" />
|
|
|
|
</a>
|
|
|
|
</th>
|
|
|
|
<th>Created</th>
|
|
|
|
<th>Verified</th>
|
|
|
|
<th class="text-right">Actions</th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
@foreach (var user in Model.Users)
|
|
|
|
{
|
|
|
|
<tr>
|
|
|
|
<td>@user.Email</td>
|
|
|
|
<td>@user.Created?.ToBrowserDate()</td>
|
|
|
|
<td class="text-center">
|
|
|
|
@if (user.Verified)
|
|
|
|
{
|
|
|
|
<span class="text-success fa fa-check"></span>
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
<span class="text-danger fa fa-times"></span>
|
|
|
|
}
|
|
|
|
</td>
|
|
|
|
<td class="text-right">
|
|
|
|
<a asp-action="User" asp-route-userId="@user.Id">Edit</a> <span> - </span> <a asp-action="DeleteUser" asp-route-userId="@user.Id">Remove</a>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
}
|
|
|
|
</tbody>
|
|
|
|
</table>
|
2021-03-29 22:32:44 -07:00
|
|
|
|
2021-04-08 15:32:42 +02:00
|
|
|
<vc:pager view-model="Model"></vc:pager>
|