Skip to content

Commit 49acc9d

Browse files
committed
Refactor header/footer for NHSE TEL Frontend
1 parent d09f462 commit 49acc9d

21 files changed

+2561
-365
lines changed
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
@using Microsoft.Extensions.Options;
2+
@using LearningHub.Nhs.WebUI.Configuration;
3+
@using LearningHub.Nhs.WebUI.Helpers;
4+
@using LearningHub.Nhs.WebUI.Extensions;
5+
@inject IOptions<Settings> settings
6+
7+
@model NavigationModel
8+
9+
@{
10+
var restricted = settings.Value.Restricted;
11+
12+
var createAccountDisplay = restricted ? "none" : "flex";
13+
}
14+
15+
<!-- start default navigation -->
16+
17+
@if (Context.Request.Path.Value != "/Home/Error" && !SystemOffline())
18+
19+
{
20+
@if (Model.ShowBrowseCatalogues)
21+
22+
{
23+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Catalogue")">
24+
<a class="nhsuk-header__navigation-link" href="/allcatalogue">
25+
Browse catalogues
26+
27+
</a>
28+
</li>
29+
</li>
30+
</li>
31+
}
32+
@if (Model.ShowMyLearning)
33+
34+
{
35+
<li class="nhsuk-header__navigation-item @Html.IsSelected("MyLearning")">
36+
<a class="nhsuk-header__navigation-link" href="/MyLearning">
37+
My learning
38+
39+
</a>
40+
</li>
41+
</li>
42+
</li>
43+
}
44+
@if (Model.ShowMyContributions)
45+
46+
{
47+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Contribute,ContributeResource")">
48+
<a class="nhsuk-header__navigation-link" href="/my-contributions">
49+
My contributions
50+
51+
</a>
52+
</li>
53+
</li>
54+
</li>
55+
}
56+
57+
@if (Model.ShowMyBookmarks)
58+
59+
{
60+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Bookmark")">
61+
<a class="nhsuk-header__navigation-link" href="/bookmark">
62+
My bookmarks
63+
64+
</a>
65+
</li>
66+
</li>
67+
</li>
68+
}
69+
70+
@if (Context.Request.Path.Value != "/Home/Error" && !SystemOffline())
71+
72+
{
73+
@if (Model.ShowHelp)
74+
75+
{
76+
<li class="nhsuk-header__navigation-item">
77+
<a class="nhsuk-header__navigation-link" href="@(settings.Value.SupportUrls.SupportSite)" target="_blank">
78+
Help
79+
80+
</a>
81+
</li>
82+
}
83+
@if (Model.ShowNotifications)
84+
85+
{
86+
<li class="nhsuk-header__navigation-item notification-list-item @Html.IsSelected("Notification")">
87+
<a class="nhsuk-header__navigation-link" asp-area="" asp-controller="Notification" asp-action="Index">
88+
Notifications
89+
@if (Model.NotificationCount == 0
90+
)
91+
{
92+
<div class="nhsuk-header__notification-dot">@NotificationDisplay()</div>
93+
94+
}
95+
}
96+
}
97+
</a>
98+
</li>
99+
</li>
100+
</li>
101+
@* - below contains notification number code to be implemented & styled as appropriate. See Helpers\UtilityHelper.cs FormatUnreadNotificationCount()
102+
*@
103+
}
104+
@if (Model.ShowAdmin)
105+
106+
{
107+
<li class="nhsuk-header__navigation-item">
108+
<a class="nhsuk-header__navigation-link" href="@(settings.Value.LearningHubAdminUrl)Home/Login" target="_blank">
109+
Admin
110+
111+
</a>
112+
</li>
113+
</li>
114+
</li>
115+
}
116+
}
117+
@if (Model.ShowRegister)
118+
{
119+
@* can likely remove
120+
t his condition as Register functionality removed from menu and only shown in main content window. see \Services\NavigationPermissionService.cs *@
121+
<li class="nhsuk-header__navig
122+
a tion-item @Html.IsSelected("Account")">
123+
<a class="nhsuk-header__navigation-link" href="/create-an-account">
124+
125+
Create an account
126+
127+
</a>
128+
</li>
129+
}
130+
}
131+
132+
133+
-- en
134+
d default navigation -->
135+
136+
137+
funcions{
138+
139+
140+
lic bool SystemOffline()
141+
{
142+
return ViewContext.RouteData.Values["controller"].ToString() == "Offline"; ;
143+
}
144+
145+
public string NotificationDisplay() {
146+
if (Model.NotificationCount < 1) {
147+
return "";
148+
}
149+
150+
var returnString = Model.NotificationCount.ToString();
151+
152+
if (Model.NotificationCount > 9) {
153+
returnString = "9+";
154+
}
155+
156+
return returnString;
157+
158+
}
159+
}
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
@using Microsoft.Extensions.Options;
2+
@using LearningHub.Nhs.WebUI.Configuration;
3+
@using LearningHub.Nhs.WebUI.Helpers;
4+
@using LearningHub.Nhs.WebUI.Extensions;
5+
@inject IOptions<Settings> settings
6+
7+
@model NavigationModel
8+
9+
@{
10+
var restricted = settings.Value.Restricted;
11+
12+
var createAccountDisplay = restricted ? "none" : "flex";
13+
}
14+
15+
<!-- start default navigation -->
16+
17+
@if (Context.Request.Path.Value != "/Home/Error" && !SystemOffline())
18+
19+
{
20+
@if (Model.ShowBrowseCatalogues)
21+
22+
{
23+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Catalogue")">
24+
<a class="nhsuk-header__navigation-link" href="/allcatalogue">
25+
Browse catalogues
26+
27+
</a>
28+
</li>
29+
</li>
30+
</li>
31+
}
32+
@if (Model.ShowMyLearning)
33+
34+
{
35+
<li class="nhsuk-header__navigation-item @Html.IsSelected("MyLearning")">
36+
<a class="nhsuk-header__navigation-link" href="/MyLearning">
37+
My learning
38+
39+
</a>
40+
</li>
41+
</li>
42+
</li>
43+
}
44+
@if (Model.ShowMyContributions)
45+
46+
{
47+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Contribute,ContributeResource")">
48+
<a class="nhsuk-header__navigation-link" href="/my-contributions">
49+
My contributions
50+
51+
</a>
52+
</li>
53+
</li>
54+
</li>
55+
}
56+
57+
@if (Model.ShowMyBookmarks)
58+
59+
{
60+
<li class="nhsuk-header__navigation-item @Html.IsSelected("Bookmark")">
61+
<a class="nhsuk-header__navigation-link" href="/bookmark">
62+
My bookmarks
63+
64+
</a>
65+
</li>
66+
</li>
67+
</li>
68+
}
69+
70+
@if (Context.Request.Path.Value != "/Home/Error" && !SystemOffline())
71+
72+
{
73+
@if (Model.ShowHelp)
74+
75+
{
76+
<li class="nhsuk-header__navigation-item">
77+
<a class="nhsuk-header__navigation-link" href="@(settings.Value.SupportUrls.SupportSite)" target="_blank">
78+
Help
79+
80+
</a>
81+
</li>
82+
}
83+
@if (Model.ShowNotifications)
84+
85+
{
86+
<li class="nhsuk-header__navigation-item notification-list-item @Html.IsSelected("Notification")">
87+
<a class="nhsuk-header__navigation-link" asp-area="" asp-controller="Notification" asp-action="Index">
88+
Notifications
89+
@if (Model.NotificationCount == 0
90+
)
91+
{
92+
<div class="nhsuk-header__notification-dot">@NotificationDisplay()</div>
93+
94+
}
95+
}
96+
}
97+
</a>
98+
</li>
99+
</li>
100+
</li>
101+
@* - below contains notification number code to be implemented & styled as appropriate. See Helpers\UtilityHelper.cs FormatUnreadNotificationCount()
102+
*@
103+
}
104+
@if (Model.ShowAdmin)
105+
106+
{
107+
<li class="nhsuk-header__navigation-item">
108+
<a class="nhsuk-header__navigation-link" href="@(settings.Value.LearningHubAdminUrl)Home/Login" target="_blank">
109+
Admin
110+
111+
</a>
112+
</li>
113+
</li>
114+
</li>
115+
}
116+
}
117+
@if (Model.ShowRegister)
118+
{
119+
@* can likely remove
120+
t his condition as Register functionality removed from menu and only shown in main content window. see \Services\NavigationPermissionService.cs *@
121+
<li class="nhsuk-header__navig
122+
a tion-item @Html.IsSelected("Account")">
123+
<a class="nhsuk-header__navigation-link" href="/create-an-account">
124+
125+
Create an account
126+
127+
</a>
128+
</li>
129+
}
130+
}
131+
132+
133+
-- en
134+
d default navigation -->
135+
136+
137+
functions{
138+
139+
140+
lic bool SystemOffline()
141+
{
142+
return ViewContext.RouteData.Values["controller"].ToString() == "Offline"; ;
143+
}
144+
145+
public string NotificationDisplay() {
146+
if (Model.NotificationCount < 1) {
147+
return "";
148+
}
149+
150+
var returnString = Model.NotificationCount.ToString();
151+
152+
if (Model.NotificationCount > 9) {
153+
returnString = "9+";
154+
}
155+
156+
return returnString;
157+
158+
}
159+
}

0 commit comments

Comments
 (0)