Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
114 changes: 64 additions & 50 deletions LearningHub.Nhs.WebUI/Views/Catalogue/RequestAccess.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -2,68 +2,82 @@
@using LearningHub.Nhs.WebUI.Models.Catalogue
@using LearningHub.Nhs.Models.Enums
@{
ViewData["Title"] = "Request Access";
ViewData["Title"] = "Request Access";
}

@section styles{
<link rel="stylesheet" type="text/css" href="~/css/nhsuk/pages/catalogue.css" asp-append-version="true" />
@section styles {
<link rel="stylesheet" type="text/css" href="~/css/nhsuk/pages/catalogue.css" asp-append-version="true" />
}

<div class="request-access-page">
<div class="nhsuk-width-container app-width-container">
<vc:back-link asp-controller="Catalogue" asp-action="@Model.CatalogueUrl" link-text="Back to: @Model.CatalogueName" />
<h1>Catalogue access request</h1>
<div class="nhsuk-width-container app-width-container">
<vc:back-link asp-controller="Catalogue" asp-action="@Model.CatalogueUrl" link-text="Back to: @Model.CatalogueName" />
<h1>Catalogue access request</h1>

<div class="nhsuk-u-reading-width nhsuk-u-font-size-19">
@using (Html.BeginForm("RequestAccessPost", "Catalogue", FormMethod.Post))
{
@if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Rejected)
{
<p>Your last request to access this catalogue was denied on @Model.CatalogueAccessRequest.DateRejected.Value.ToString("dd MMM yyyy") for the following reason:</p>
<p>@Model.CatalogueAccessRequest.ResponseMessage</p>
}
<div class="nhsuk-u-reading-width nhsuk-u-font-size-19">
@using (Html.BeginForm("RequestAccessPost", "Catalogue", FormMethod.Post))
{
@if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Rejected)
{
<p>Your last request to access this catalogue was denied on @Model.CatalogueAccessRequest.DateRejected.Value.ToString("dd MMM yyyy") for the following reason:</p>
<p>@Model.CatalogueAccessRequest.ResponseMessage</p>
}
else if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Pending)
{
<p>Your access request which was sent on @Model.CatalogueAccessRequest.DateRequested.ToString("dd MMM yyyy") is pending a decision.</p>
<p>If you need further information <a target="_blank" href="@ViewBag.SupportUrl">contact support</a></p>
}

<p>You are requesting access to the @Model.CatalogueName catalogue. Enter the information below which will be sent to the catalogue administrator. You will be notified of their decision by email.</p>
<p>You are requesting access to the @Model.CatalogueName catalogue. Enter the information below which will be sent to the catalogue administrator. You will be notified of their decision by email.</p>

<table class="personal-details-table nhsuk-u-margin-bottom-4">
<tr>
<td class="nhsuk-u-font-weight-bold">Name:</td>
<td>@Model.CurrentUser.FirstName @Model.CurrentUser.LastName</td>
</tr>
<tr>
<td class="nhsuk-u-font-weight-bold">Email:</td>
<td>@Model.CurrentUser.EmailAddress</td>
</tr>
</table>
<table class="personal-details-table nhsuk-u-margin-bottom-4">
<tr>
<td class="nhsuk-u-font-weight-bold">Name:</td>
<td>@Model.CurrentUser.FirstName @Model.CurrentUser.LastName</td>
</tr>
<tr>
<td class="nhsuk-u-font-weight-bold">Email:</td>
<td>@Model.CurrentUser.EmailAddress</td>
</tr>
</table>

<div class="nhsuk-form-group">
<div class="nhsuk-hint" id="message-hint">
Enter your role, place of work, professional body number (if applicable) and information on why you are requesting access to this catalogue.
</div>
<div class="nhsuk-form-group">
<div class="nhsuk-hint" id="message-hint">
Enter your role, place of work, professional body number (if applicable) and information on why you are requesting access to this catalogue.
</div>

<textarea asp-for="AccessRequestMessage" class="nhsuk-textarea" id="AccessRequestMessage" rows="5" aria-describedby="message-hint"></textarea>
<div class="nhsuk-u-margin-top-3"><span asp-validation-for="AccessRequestMessage"></span></div>
</div>
<textarea asp-for="AccessRequestMessage" class="nhsuk-textarea" id="AccessRequestMessage" rows="5" aria-describedby="message-hint"></textarea>
<div class="nhsuk-u-margin-top-3"><span asp-validation-for="AccessRequestMessage"></span></div>
</div>

<input type="hidden" asp-for="CatalogueNodeId" />
<input type="hidden" asp-for="CatalogueName" />
<input type="hidden" asp-for="CatalogueUrl" />
<input type="hidden" asp-for="CurrentUser.FirstName" />
<input type="hidden" asp-for="CurrentUser.LastName" />
<input type="hidden" asp-for="CurrentUser.EmailAddress" />
<input type="hidden" asp-for="ReturnUrl" />
@if (Model.CatalogueAccessRequest != null)
{
<input type="hidden" asp-for="CatalogueAccessRequest.DateRejected" />
<input type="hidden" asp-for="CatalogueAccessRequest.Status" />
<input type="hidden" asp-for="CatalogueAccessRequest.ResponseMessage" />
}
<input type="hidden" asp-for="CatalogueNodeId" />
<input type="hidden" asp-for="CatalogueName" />
<input type="hidden" asp-for="CatalogueUrl" />
<input type="hidden" asp-for="CurrentUser.FirstName" />
<input type="hidden" asp-for="CurrentUser.LastName" />
<input type="hidden" asp-for="CurrentUser.EmailAddress" />
<input type="hidden" asp-for="ReturnUrl" />
@if (Model.CatalogueAccessRequest != null)
{
<input type="hidden" asp-for="CatalogueAccessRequest.DateRejected" />
<input type="hidden" asp-for="CatalogueAccessRequest.Status" />
<input type="hidden" asp-for="CatalogueAccessRequest.ResponseMessage" />
}

<div class="display__flex-space-between">
<a class="nhsuk-button nhsuk-button--secondary" href="@Model.ReturnUrl">Cancel</a>
<button type="submit" class="nhsuk-button">Send request</button>
</div>
}
<div class="display__flex-space-between">

@if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Pending)
{
<a class="nhsuk-button nhsuk-button--secondary" href="@Model.ReturnUrl" disabled>Cancel</a>
<button type="submit" class="nhsuk-button nhsuk-button--secondary" disabled>Send request</button>
}
else
{
<a class="nhsuk-button nhsuk-button--secondary" href="@Model.ReturnUrl">Cancel</a>
<button type="submit" class="nhsuk-button">Send request</button>
}
</div>
}
</div>
</div>
</div>
42 changes: 21 additions & 21 deletions LearningHub.Nhs.WebUI/Views/Shared/_RestrictedAccessBanner.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,26 @@

@if (ViewBag.UserAuthenticated && Model.RestrictedAccess && !Model.HasCatalogueAccess)
{
<div class="nhsuk-bg-pale-blue nhsuk-u-padding-top-4 nhsuk-u-padding-bottom-3 nhsuk-u-margin-bottom-3">
<div class="nhsuk-width-container app-width-container">
@if (Model.CatalogueAccessRequest == null || Model.UserGroups.Count == 0)
{
<h2>@Model.TitleText</h2>
<p class="nhsuk-u-reading-width">@Model.BodyText</p>
<a class="nhsuk-button" asp-controller="Catalogue" asp-action="RequestAccess" asp-route-catalogueNodeVersionId="@Model.CatalogueNodeVersionId">Request access</a>
}
else if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Pending)
{
<h2 class="nhsuk-card__heading">@Model.TitleText</h2>
<p>Your access request which was sent on @Model.CatalogueAccessRequest.DateRequested.ToString("dd MMM yyyy") is pending a decision.</p>
<p>If you need further information <a target="_blank" href="@ViewBag.SupportUrl">contact support</a></p>
}
else if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Rejected)
{
<h2>@Model.TitleText</h2>
<p class="nhsuk-u-reading-width">The catalogue administrator did not approve your request to access this catalogue on @Model.CatalogueAccessRequest.DateRejected.Value.ToString("dd MMM yyyy"). If anything has changed in relation to your original request, you can request access again.</p>
<a class="nhsuk-button" asp-controller="Catalogue" asp-action="RequestAccess" asp-route-catalogueNodeVersionId="@Model.CatalogueNodeVersionId">Request access</a>
}
</div>
<div class="nhsuk-bg-pale-blue nhsuk-u-padding-top-4 nhsuk-u-padding-bottom-3 nhsuk-u-margin-bottom-3">
<div class="nhsuk-width-container app-width-container">
@if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Pending)
{
<h2 class="nhsuk-card__heading">@Model.TitleText</h2>
<p>Your access request which was sent on @Model.CatalogueAccessRequest.DateRequested.ToString("dd MMM yyyy") is pending a decision.</p>
<p>If you need further information <a target="_blank" href="@ViewBag.SupportUrl">contact support</a></p>
}
else if (Model.CatalogueAccessRequest != null && Model.CatalogueAccessRequest.Status == CatalogueAccessRequestStatus.Rejected)
{
<h2>@Model.TitleText</h2>
<p class="nhsuk-u-reading-width">The catalogue administrator did not approve your request to access this catalogue on @Model.CatalogueAccessRequest.DateRejected.Value.ToString("dd MMM yyyy"). If anything has changed in relation to your original request, you can request access again.</p>
<a class="nhsuk-button" asp-controller="Catalogue" asp-action="RequestAccess" asp-route-catalogueNodeVersionId="@Model.CatalogueNodeVersionId">Request access</a>
}
else if (Model.CatalogueAccessRequest == null || Model.UserGroups.Count == 0)
{
<h2>@Model.TitleText</h2>
<p class="nhsuk-u-reading-width">@Model.BodyText</p>
<a class="nhsuk-button" asp-controller="Catalogue" asp-action="RequestAccess" asp-route-catalogueNodeVersionId="@Model.CatalogueNodeVersionId">Request access</a>
}
</div>
</div>
}
Loading