58 lines
2.2 KiB
Plaintext
58 lines
2.2 KiB
Plaintext
@page
|
|
@using Models;
|
|
@using System.Security.Claims;
|
|
@model WebApp.Pages.AnnouncementsModel
|
|
@{
|
|
ViewData["Title"] = "Announcements";
|
|
List<Announcement> announcements = ((List<Announcement>)ViewData["announcements"]).OrderByDescending(x => x.PublishDate).OrderByDescending(x => x.IsSticky).ToList();
|
|
int currentPage = @Convert.ToInt32(ViewData["page"]);
|
|
}
|
|
|
|
<a href="./CreateAnnouncement" class="btn btn-primary">Create new announcement</a>
|
|
|
|
<div class="mb-3 mt-3">
|
|
@foreach (Announcement announcement in announcements)
|
|
{
|
|
<div class="card" style="display:inline-flex; width: 18rem;">
|
|
<div class="card-body">
|
|
<h5 class="card-title">@announcement.Title</h5>
|
|
<h6 class="card-subtitle mb-2 text-muted">@announcement.Author.Name</h6>
|
|
<p class="card-text">@announcement.Description.PadRight(100).Trim()</p>
|
|
<a href="./Announcement?id=@announcement.ID" class="btn btn-primary">More details</a>
|
|
</div>
|
|
</div>
|
|
}
|
|
</div>
|
|
|
|
<nav aria-label="Page navigation">
|
|
<ul class="pagination justify-content-center">
|
|
@if (currentPage <= 1)
|
|
{
|
|
@: <li class="page-item disabled">
|
|
@: <a class="page-link" tabindex="-1">Previous</a>
|
|
@: </li>
|
|
}
|
|
else
|
|
{
|
|
@: <li class="page-item">
|
|
@: <a class="page-link" href="./Announcements?p=@(currentPage - 1)" tabindex="-1">Previous</a>
|
|
@: </li>
|
|
@: <li class="page-item"><a class="page-link" href="./Announcements?p=@(currentPage - 1)">@(currentPage - 1)</a></li>
|
|
}
|
|
<li class="page-item"><a class="page-link">@currentPage</a>
|
|
@if (announcements.Count == 0 || announcements.Count < Convert.ToInt32(ViewData["count"]))
|
|
{
|
|
@: <li class="page-item disabled">
|
|
@: <a class="page-link">Next</a>
|
|
@: </li>
|
|
}
|
|
else
|
|
{
|
|
@: <li class="page-item"><a class="page-link" href="./Announcements?p=@(currentPage + 1)">@(currentPage + 1)</a></li>
|
|
@: <li class="page-item">
|
|
@: <a class="page-link" href="./Announcements?p=@(currentPage + 1)">Next</a>
|
|
@: </li>
|
|
}
|
|
</ul>
|
|
</nav>
|