Page numbers fixed, Register with roles not shown to guests

This commit is contained in:
Dimitar Byalkov
2023-05-05 00:35:35 +02:00
parent eea8cf9aac
commit 81109f3d6c
4 changed files with 25 additions and 8 deletions

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
@@ -7,8 +8,11 @@ namespace StudentHouseDashboard.Models
{
public enum UserRole
{
[Display(Name = "Tenant")]
TENANT,
[Display(Name = "Manager")]
MANAGER,
[Display(Name = "Administrator")]
ADMIN
}
}

View File

@@ -33,7 +33,7 @@
@if (currentPage <= 1)
{
@: <li class="page-item disabled">
@: <a class="page-link" href="./Announcements?p=@(currentPage - 1)" tabindex="-1">Previous</a>
@: <a class="page-link" tabindex="-1">Previous</a>
@: </li>
}
else
@@ -44,16 +44,18 @@
@: <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)
@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>
}
<a class="page-link" href="./Announcements?p=@(currentPage + 1)">Next</a>
</li>
</ul>
</nav>

View File

@@ -18,8 +18,13 @@ namespace WebApp.Pages
{
p = 1;
}
if (c == null || c < 1)
{
c = 10;
}
ViewData.Add("announcements", AnnouncementManager.GetAnnouncementsByPage(p - 1, c));
ViewData.Add("page", p);
ViewData.Add("count", c);
ViewData.Add("allCount", AnnouncementManager.GetAllAnnouncements().Count());
}
}

View File

@@ -1,4 +1,5 @@
@page
@using StudentHouseDashboard.Models;
@model WebApp.Pages.RegisterModel
@{
ViewData["Title"] = "Register";
@@ -14,10 +15,15 @@
}
<form method="post">
<div class="mb-3">
<label asp-for="MyUser.Role" class="form-label">Role: </label>
<input asp-for="MyUser.Role" class="form-control" />
</div>
@if (HttpContext.User.IsInRole("ADMIN") || HttpContext.User.IsInRole("MANAGER"))
{
@: <div class="mb-3">
<label asp-for="MyUser.Role" class="form-label">Role: </label>
<select asp-for="MyUser.Role" asp-items="Html.GetEnumSelectList<UserRole>()">
<option>Please select a role</option>
</select>
@: </div>
}
<div class="mb-3">
<label asp-for="MyUser.Name" class="form-label">Name: </label>
<input asp-for="MyUser.Name" class="form-control" />