Merge branch 'j3/feat/pagination' into dev
This commit is contained in:
@@ -31,7 +31,6 @@
|
||||
this.configuration = configuration;
|
||||
this.titreRepository = titreRepository;
|
||||
this.logger.LogDebug(1, "initialisation du AccueilController");
|
||||
this.titreRepository = titreRepository;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -45,17 +44,20 @@
|
||||
|
||||
var derniereChronique = this.configuration.GetValue<int>("Webzine:NombreDerniereChronique");
|
||||
var nbTopTitres = this.configuration.GetValue<int>("Webzine:NombreDeTopTitres");
|
||||
var totalTitres = this.titreRepository.Count();
|
||||
var totalPages = (int)Math.Ceiling((double)totalTitres / derniereChronique);
|
||||
|
||||
var titres_pagines = this.titreRepository.FindTitres(page * derniereChronique, derniereChronique);
|
||||
var top_titres = this.titreRepository.FindAll()
|
||||
var titresPagines = this.titreRepository.FindTitres(page * derniereChronique, derniereChronique);
|
||||
var topTitres = this.titreRepository.FindAll()
|
||||
.OrderByDescending(t => t.NbLikes)
|
||||
.Take(nbTopTitres);
|
||||
|
||||
var vm = new AccueilIndexViewModel
|
||||
{
|
||||
DerniersTitres = titres_pagines.ToList(),
|
||||
TopTitres = top_titres.ToList(),
|
||||
DerniersTitres = titresPagines.ToList(),
|
||||
TopTitres = topTitres.ToList(),
|
||||
Page = page,
|
||||
TotalPages = totalPages,
|
||||
};
|
||||
|
||||
return this.View(vm);
|
||||
|
||||
@@ -26,5 +26,10 @@
|
||||
/// Obtient ou définit le numéro de page pour la pagination des titres affichés sur la page d'accueil.
|
||||
/// </summary>
|
||||
public int Page { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Nombre total de page.
|
||||
/// </summary>
|
||||
public int TotalPages { get; set; } = 0;
|
||||
}
|
||||
}
|
||||
@@ -73,12 +73,21 @@
|
||||
</div>
|
||||
}
|
||||
<!-- Bouton -->
|
||||
<div class="row justify-content-end">
|
||||
<a asp-action="Index" asp-route-page="@(Model.Page + 1)"
|
||||
class="btn btn-secondary col-auto mt-3">
|
||||
Titres plus anciens >>
|
||||
</button>
|
||||
</a>
|
||||
<div class="row justify-content-between">
|
||||
@if (Model.Page > 0)
|
||||
{
|
||||
<a asp-action="Index" asp-route-page="@(Model.Page - 1)"
|
||||
class="btn btn-secondary col-auto mt-3">
|
||||
<< Titre plus récent
|
||||
</a>
|
||||
}
|
||||
@if (Model.Page < Model.TotalPages - 1)
|
||||
{
|
||||
<a asp-action="Index" asp-route-page="@(Model.Page + 1)"
|
||||
class="btn btn-secondary col-auto mt-3 ms-auto">
|
||||
Titre plus anciens >>
|
||||
</a>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user