Files
studenthousedashboard/StudentHouseDashboard/WebApp/Pages/Announcements.cshtml
2023-05-05 00:35:35 +02:00

62 lines
2.2 KiB
Plaintext

@page
@using StudentHouseDashboard.Models;
@using System.Security.Claims;
@model WebApp.Pages.AnnouncementsModel
@{
ViewData["Title"] = "Announcements";
List<Announcement> announcements = (List<Announcement>)ViewData["announcements"];
int currentPage = @Convert.ToInt32(ViewData["page"]);
}
@foreach (Announcement announcement in announcements)
{
<div class="card" style="display:inline-block; 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>
@if (User.FindFirst(ClaimTypes.Role).Value == "ADMIN")
{
@: <a href="./Announcement?id=@announcement.ID" class="btn btn-outline-danger btn-sm">Delete</a>
}
</div>
</div>
}
<br />
<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>