refactorinf & max result per page
This commit is contained in:
@ -20,6 +20,7 @@ using Newtonsoft.Json;
|
||||
|
||||
namespace Yavsc.Controllers
|
||||
{
|
||||
using System.Text;
|
||||
using Yavsc.Abstract.Manage;
|
||||
using Yavsc.Helpers;
|
||||
|
||||
@ -60,10 +61,28 @@ namespace Yavsc.Controllers
|
||||
_dbContext = dbContext;
|
||||
}
|
||||
|
||||
const string nextPageTokenKey = "nextPageTokenKey";
|
||||
const int defaultLen = 10;
|
||||
|
||||
[Authorize(Roles = Constants.AdminGroupName)]
|
||||
public async Task<IActionResult> UserList()
|
||||
[Route("Account/UserList/{page?}/{len?}")]
|
||||
public async Task<IActionResult> UserList(string page, string len)
|
||||
{
|
||||
return View(await _dbContext.Users.ToArrayAsync());
|
||||
int pageNum = page!=null ? int.Parse(page) : 0;
|
||||
int pageLen = len!=null ? int.Parse(len) : defaultLen;
|
||||
|
||||
var users = _dbContext.Users.OrderBy(u=>u.UserName);
|
||||
var shown = pageNum * pageLen;
|
||||
var toShow = users.Skip(shown).Take(pageLen);
|
||||
|
||||
ViewBag.page = pageNum;
|
||||
ViewBag.hasNext = await users.CountAsync() > (toShow.Count() + shown);
|
||||
ViewBag.nextpage = pageNum+1;
|
||||
ViewBag.pageLen = pageLen;
|
||||
return View(toShow.ToArray());
|
||||
}
|
||||
string GeneratePageToken() {
|
||||
return System.Guid.NewGuid().ToString();
|
||||
}
|
||||
|
||||
[AllowAnonymous]
|
||||
|
@ -453,6 +453,7 @@
|
||||
<data name="PasswordRequiresUpper"><value>Les mots de passe doivent contenir au moins une lettre majuscule ('A' à 'Z').</value></data>
|
||||
<data name="PassAndConfirmDontMach"><value>Le mot de passe et sa confirmation ne sont pas les mêmes.</value></data>
|
||||
<data name="PasswordConfirm"><value>Confirmation du mot de passe</value></data>
|
||||
<data name="ConfirmPassword"><value>Confirmation du mot de passe</value></data>
|
||||
<data name="ErrorSendingEmailForConfirm"><value>L'envoi de de courrier pour confirmation de l'adresse e-mail a échoué.</value></data>
|
||||
<data name="EmailSentForConfirm"><value>Un courrier a été envoyé pour confirmation de l'adresse e-mail .</value></data>
|
||||
<data name="ConfirmYourAccountTitle"><value>S'il vous plait, confirmez votre addresse e-mail</value></data>
|
||||
|
@ -15,28 +15,28 @@
|
||||
<hr />
|
||||
<div asp-validation-summary="ValidationSummary.All" class="text-danger"></div>
|
||||
<div class="form-group">
|
||||
<label asp-for="UserName" class="col-md-2 control-label"></label>
|
||||
<label asp-for="UserName" class="col-md-2 control-label">@SR["UserName"]</label>
|
||||
<div class="col-md-10">
|
||||
<input asp-for="UserName" class="form-control" placeholder="Votre nom"/>
|
||||
<span asp-validation-for="UserName" class="text-danger"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Email" class="col-md-2 control-label"></label>
|
||||
<label asp-for="Email" class="col-md-2 control-label">@SR["Email"]</label>
|
||||
<div class="col-md-10">
|
||||
<input asp-for="Email" class="form-control" placeholder="votre@@email" />
|
||||
<span asp-validation-for="Email" class="text-danger"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="Password" class="col-md-2 control-label"></label>
|
||||
<label asp-for="Password" class="col-md-2 control-label">@SR["Password"]</label>
|
||||
<div class="col-md-10">
|
||||
<input asp-for="Password" class="form-control" />
|
||||
<span asp-validation-for="Password" class="text-danger"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label asp-for="ConfirmPassword" class="col-md-2 control-label"></label>
|
||||
<label asp-for="ConfirmPassword" class="col-md-2 control-label">@SR["ConfirmPassword"]</label>
|
||||
<div class="col-md-10">
|
||||
<input asp-for="ConfirmPassword" class="form-control" />
|
||||
<span asp-validation-for="ConfirmPassword" class="text-danger"></span>
|
||||
|
@ -4,5 +4,61 @@
|
||||
}
|
||||
|
||||
<h2>@ViewData["Title"].</h2>
|
||||
<table>
|
||||
<thead>
|
||||
<th>
|
||||
@SR["Public info"]
|
||||
</th>
|
||||
<th>
|
||||
@SR["AdminOnly"]
|
||||
</th>
|
||||
|
||||
</thead>
|
||||
@foreach (var user in Model)
|
||||
{
|
||||
<tr>
|
||||
<td>
|
||||
@Html.DisplayFor(m=>user)
|
||||
</td>
|
||||
<td>
|
||||
<dl>
|
||||
<dt>
|
||||
UserName
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(m=>user.UserName)
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>
|
||||
FullName
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(m=>user.FullName)
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>
|
||||
@SR["PostalAddress"]
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(m=>user.PostalAddress)
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>
|
||||
Email
|
||||
</dt>
|
||||
<dd>
|
||||
@Html.DisplayFor(m=>user.Email)
|
||||
</dd>
|
||||
</dl>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
</table>
|
||||
|
||||
@Html.DisplayFor(m=>m)
|
||||
@if (ViewBag.hasNext)
|
||||
{
|
||||
<a asp-route-page="@ViewBag.nextpage" asp-route-len="@ViewBag.pageLen">Next page</a>
|
||||
}
|
3
Yavsc/contrib/TEstShouldNotBeCompiled.cs
Normal file
3
Yavsc/contrib/TEstShouldNotBeCompiled.cs
Normal file
@ -0,0 +1,3 @@
|
||||
namespace Yavsc.contrib
|
||||
{
|
||||
omg, daB4C0|)3DA!!!
|
Reference in New Issue
Block a user