diff --git a/LearningHub.Nhs.WebUI/Views/Shared/Tenant/LearningHub/_Layout.cshtml b/LearningHub.Nhs.WebUI/Views/Shared/Tenant/LearningHub/_Layout.cshtml
index 6b679b67e..c1dccf585 100644
--- a/LearningHub.Nhs.WebUI/Views/Shared/Tenant/LearningHub/_Layout.cshtml
+++ b/LearningHub.Nhs.WebUI/Views/Shared/Tenant/LearningHub/_Layout.cshtml
@@ -51,11 +51,13 @@
@await Html.PartialAsync("_GoogleAnalytics")
+
Skip to main content
@@ -159,6 +161,7 @@
+
@RenderSection("Scripts", required: false)
diff --git a/LearningHub.Nhs.WebUI/appsettings.json b/LearningHub.Nhs.WebUI/appsettings.json
index 96c3d46c2..6990c8776 100644
--- a/LearningHub.Nhs.WebUI/appsettings.json
+++ b/LearningHub.Nhs.WebUI/appsettings.json
@@ -1,23 +1,23 @@
{
- "Environment": "",
- "ConnectionStrings": {
- "NLogDb": "",
- "LearningHubRedis": ""
- },
- "MultiPageFormService": {
- "Database": "redis"
- },
- "ApplicationInsights": {
- "InstrumentationKey": ""
- },
- "Logging": {
- "LogLevel": {
- "Default": "Error",
- "System": "Information",
- "Microsoft": "Information"
- }
- },
- "AllowedHosts": "*",
+ "Environment": "",
+ "ConnectionStrings": {
+ "NLogDb": "",
+ "LearningHubRedis": ""
+ },
+ "MultiPageFormService": {
+ "Database": "redis"
+ },
+ "ApplicationInsights": {
+ "InstrumentationKey": ""
+ },
+ "Logging": {
+ "LogLevel": {
+ "Default": "Error",
+ "System": "Information",
+ "Microsoft": "Information"
+ }
+ },
+ "AllowedHosts": "*",
"Settings": {
"BuildNumber": "NotSet",
"KnownProxies": "",
@@ -63,6 +63,20 @@
"ResourceLicenseUrl": "https://support.learninghub.nhs.uk/support/solutions/articles/80000986606-which-licence-should-i-select-when-contributing-a-resource-to-the-learning-hub-",
"SupportUrlExcludedFiles": "https://localhost/resource/excludedfiles",
"MediaActivityPlayingEventIntervalSeconds": 5,
+ "BFFPathValidation": {
+ "AllowedPathPrefixes": [
+ "search/",
+ "catalogue/",
+ "Resource/GetArticleDetails",
+ "Resource/GetAudioDetails",
+ "Resource/GetFileTypes"
+ ],
+ "BlockedPathSegments": [
+ "Admin",
+ "User/Delete",
+ "Sensitive"
+ ]
+ },
"TwitterCredentials": {
"ConsumerKey": "",
"ConsumerSecret": "",
@@ -118,68 +132,71 @@
"EnableTempDebugging": "false",
"LimitScormToAdmin": "false"
- },
- "LearningHubAuthServiceConfig": {
- "Authority": "",
- "ClientId": "",
- "ClientSecret": "",
- "ResponseType": "",
- "AuthSecret": "",
- "AuthTimeout": 20,
- "OpenAthens": {
- "ClientId": "LearningHubOAClient"
- }
- },
- "MoodleAPIConfig": {
- "BaseUrl": "",
- "MoodleWSRestFormat": "json",
- "WSToken": ""
- },
- "AssetDetails": {
- "FilePath1": "145b58b5-2f3c-4c56-850e-ea5bd6dd232b",
- "FileName1": "Learning Hub Resource structure for search.docx",
- "Video1_locatorUri": "https://learninghubdevcontent-euno.streaming.media.azure.net/41aae6ba-6945-41fc-8efa-b8820dea762f/NHSTESTANDTRACEINNOVA.ism/manifest",
- "Video2_locatorUri": "https://learninghubdevcontent-euno.streaming.media.azure.net/41aae6ba-6945-41fc-8efa-b8820dea762f/NHSTESTANDTRACEINNOVA.ism/manifest",
- "ShowHomeLink": "true",
- "AutoPlayMedia": "false"
- },
- "AppStartConfig": {
- "Minimum_IOCP_THREADS": 100,
- "Minimum_WORKER_THREADS": 100
- },
- "CookieBannerConsent": {
- "CookieBannerContent": "
We've put some small files called cookies on your device to make our site work.
We'd also like to use analytics cookies. These send anonymous information about how our site is used to a service called Google Analytics & Hotjar Analytics. We use this information to improve our site.
",
- "ApplicationName": "Learning Hub",
- "CookieName": "NHSLearningHub-cookie-consent",
- "ExpiryDays": "365",
- "AnalyticsCookieNamesPrefix": [ "_ga", "_hj" ],
- "AnalyticsCookiesDomainName": ""
- },
- "CookiePolicy": {
- "ControllerName": "Policies",
- "ActionName": "Cookie-policy"
- },
- "LearningHubReportAPIConfig": {
- "BaseUrl": "",
- "ClientId": "",
- "ClientIdentityKey": ""
- },
- "FeatureManagement": {
- "ContributeAudioVideoResource": true,
- "DisplayAudioVideoResource": true,
- "EnableMoodle": false
- },
- "IpRateLimiting": {
- "EnableEndpointRateLimiting": true,
- "StackBlockedRequests": false,
- "RealIpHeader": "X-Real-IP",
- "HttpStatusCode": 429,
- "GeneralRules": [
- {
- "Endpoint": "post:/Account/ForgotPassword",
- "Period": "1m",
- "Limit": 5
- }
- ]
+ },
+ "LearningHubAuthServiceConfig": {
+ "Authority": "",
+ "ClientId": "",
+ "ClientSecret": "",
+ "ResponseType": "",
+ "AuthSecret": "",
+ "AuthTimeout": 20,
+ "OpenAthens": {
+ "ClientId": "LearningHubOAClient"
}
+ },
+ "MoodleAPIConfig": {
+ "BaseUrl": "",
+ "MoodleWSRestFormat": "json",
+ "WSToken": ""
+ },
+ "AssetDetails": {
+ "FilePath1": "145b58b5-2f3c-4c56-850e-ea5bd6dd232b",
+ "FileName1": "Learning Hub Resource structure for search.docx",
+ "Video1_locatorUri": "https://learninghubdevcontent-euno.streaming.media.azure.net/41aae6ba-6945-41fc-8efa-b8820dea762f/NHSTESTANDTRACEINNOVA.ism/manifest",
+ "Video2_locatorUri": "https://learninghubdevcontent-euno.streaming.media.azure.net/41aae6ba-6945-41fc-8efa-b8820dea762f/NHSTESTANDTRACEINNOVA.ism/manifest",
+ "ShowHomeLink": "true",
+ "AutoPlayMedia": "false"
+ },
+ "AppStartConfig": {
+ "Minimum_IOCP_THREADS": 100,
+ "Minimum_WORKER_THREADS": 100
+ },
+ "CookieBannerConsent": {
+ "CookieBannerContent": "
We've put some small files called cookies on your device to make our site work.
We'd also like to use analytics cookies. These send anonymous information about how our site is used to a service called Google Analytics & Hotjar Analytics. We use this information to improve our site.
",
+ "ApplicationName": "Learning Hub",
+ "CookieName": "NHSLearningHub-cookie-consent",
+ "ExpiryDays": "365",
+ "AnalyticsCookieNamesPrefix": [ "_ga", "_hj" ],
+ "AnalyticsCookiesDomainName": ""
+ },
+ "CookiePolicy": {
+ "ControllerName": "Policies",
+ "ActionName": "Cookie-policy"
+ },
+ "LearningHubReportAPIConfig": {
+ "BaseUrl": "",
+ "ClientId": "",
+ "ClientIdentityKey": ""
+ },
+ "FeatureManagement": {
+ "ContributeAudioVideoResource": true,
+ "DisplayAudioVideoResource": true,
+ "EnableMoodle": false
+ },
+ "IpRateLimiting": {
+ "EnableEndpointRateLimiting": true,
+ "StackBlockedRequests": false,
+ "RealIpHeader": "X-Real-IP",
+ "HttpStatusCode": 429,
+ "GeneralRules": [
+ {
+ "Endpoint": "post:/Account/ForgotPassword",
+ "Period": "1m",
+ "Limit": 5
+ }
+ ]
+ },
+ "Properties": {
+ "Application": "LearningHub Nhs WebUI Blazor Host"
+ }
}
diff --git a/OpenAPI/LearningHub.Nhs.OpenApi.Services.Interface/LearningHub.Nhs.OpenApi.Services.Interface.csproj b/OpenAPI/LearningHub.Nhs.OpenApi.Services.Interface/LearningHub.Nhs.OpenApi.Services.Interface.csproj
index aa019e18c..761899ec1 100644
--- a/OpenAPI/LearningHub.Nhs.OpenApi.Services.Interface/LearningHub.Nhs.OpenApi.Services.Interface.csproj
+++ b/OpenAPI/LearningHub.Nhs.OpenApi.Services.Interface/LearningHub.Nhs.OpenApi.Services.Interface.csproj
@@ -16,7 +16,7 @@
-
+
diff --git a/OpenAPI/LearningHub.Nhs.OpenApi.Services/LearningHub.Nhs.OpenApi.Services.csproj b/OpenAPI/LearningHub.Nhs.OpenApi.Services/LearningHub.Nhs.OpenApi.Services.csproj
index 9002a0237..6ede01bb6 100644
--- a/OpenAPI/LearningHub.Nhs.OpenApi.Services/LearningHub.Nhs.OpenApi.Services.csproj
+++ b/OpenAPI/LearningHub.Nhs.OpenApi.Services/LearningHub.Nhs.OpenApi.Services.csproj
@@ -29,7 +29,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.API/LearningHub.Nhs.Api.csproj b/WebAPI/LearningHub.Nhs.API/LearningHub.Nhs.Api.csproj
index 3b09a079f..f4929f98d 100644
--- a/WebAPI/LearningHub.Nhs.API/LearningHub.Nhs.Api.csproj
+++ b/WebAPI/LearningHub.Nhs.API/LearningHub.Nhs.Api.csproj
@@ -26,7 +26,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Api.Shared/LearningHub.Nhs.Api.Shared.csproj b/WebAPI/LearningHub.Nhs.Api.Shared/LearningHub.Nhs.Api.Shared.csproj
index 1963fd724..e3beb1a81 100644
--- a/WebAPI/LearningHub.Nhs.Api.Shared/LearningHub.Nhs.Api.Shared.csproj
+++ b/WebAPI/LearningHub.Nhs.Api.Shared/LearningHub.Nhs.Api.Shared.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Api.UnitTests/LearningHub.Nhs.Api.UnitTests.csproj b/WebAPI/LearningHub.Nhs.Api.UnitTests/LearningHub.Nhs.Api.UnitTests.csproj
index e7a054e23..a04a31296 100644
--- a/WebAPI/LearningHub.Nhs.Api.UnitTests/LearningHub.Nhs.Api.UnitTests.csproj
+++ b/WebAPI/LearningHub.Nhs.Api.UnitTests/LearningHub.Nhs.Api.UnitTests.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Repository.Interface/LearningHub.Nhs.Repository.Interface.csproj b/WebAPI/LearningHub.Nhs.Repository.Interface/LearningHub.Nhs.Repository.Interface.csproj
index 7e09ec673..df10ef031 100644
--- a/WebAPI/LearningHub.Nhs.Repository.Interface/LearningHub.Nhs.Repository.Interface.csproj
+++ b/WebAPI/LearningHub.Nhs.Repository.Interface/LearningHub.Nhs.Repository.Interface.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Repository/LearningHub.Nhs.Repository.csproj b/WebAPI/LearningHub.Nhs.Repository/LearningHub.Nhs.Repository.csproj
index 6da0f9200..af6cc7469 100644
--- a/WebAPI/LearningHub.Nhs.Repository/LearningHub.Nhs.Repository.csproj
+++ b/WebAPI/LearningHub.Nhs.Repository/LearningHub.Nhs.Repository.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Services.Interface/LearningHub.Nhs.Services.Interface.csproj b/WebAPI/LearningHub.Nhs.Services.Interface/LearningHub.Nhs.Services.Interface.csproj
index 024756991..554e13326 100644
--- a/WebAPI/LearningHub.Nhs.Services.Interface/LearningHub.Nhs.Services.Interface.csproj
+++ b/WebAPI/LearningHub.Nhs.Services.Interface/LearningHub.Nhs.Services.Interface.csproj
@@ -14,7 +14,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Services.UnitTests/LearningHub.Nhs.Services.UnitTests.csproj b/WebAPI/LearningHub.Nhs.Services.UnitTests/LearningHub.Nhs.Services.UnitTests.csproj
index 6b6743743..3cf41529f 100644
--- a/WebAPI/LearningHub.Nhs.Services.UnitTests/LearningHub.Nhs.Services.UnitTests.csproj
+++ b/WebAPI/LearningHub.Nhs.Services.UnitTests/LearningHub.Nhs.Services.UnitTests.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/WebAPI/LearningHub.Nhs.Services/LearningHub.Nhs.Services.csproj b/WebAPI/LearningHub.Nhs.Services/LearningHub.Nhs.Services.csproj
index 44f8119cb..a605dc73d 100644
--- a/WebAPI/LearningHub.Nhs.Services/LearningHub.Nhs.Services.csproj
+++ b/WebAPI/LearningHub.Nhs.Services/LearningHub.Nhs.Services.csproj
@@ -10,7 +10,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.ConsoleApp/LearningHub.Nhs.Migration.ConsoleApp.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.ConsoleApp/LearningHub.Nhs.Migration.ConsoleApp.csproj
index 73e18184e..73f18f7cf 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.ConsoleApp/LearningHub.Nhs.Migration.ConsoleApp.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.ConsoleApp/LearningHub.Nhs.Migration.ConsoleApp.csproj
@@ -22,7 +22,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Interface/LearningHub.Nhs.Migration.Interface.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Interface/LearningHub.Nhs.Migration.Interface.csproj
index 7b945c483..79bdcf576 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Interface/LearningHub.Nhs.Migration.Interface.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Interface/LearningHub.Nhs.Migration.Interface.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Models/LearningHub.Nhs.Migration.Models.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Models/LearningHub.Nhs.Migration.Models.csproj
index 189b0348e..418978976 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Models/LearningHub.Nhs.Migration.Models.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Models/LearningHub.Nhs.Migration.Models.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Staging.Repository/LearningHub.Nhs.Migration.Staging.Repository.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Staging.Repository/LearningHub.Nhs.Migration.Staging.Repository.csproj
index 090dce6fc..145020f8a 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Staging.Repository/LearningHub.Nhs.Migration.Staging.Repository.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.Staging.Repository/LearningHub.Nhs.Migration.Staging.Repository.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.UnitTests/LearningHub.Nhs.Migration.UnitTests.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.UnitTests/LearningHub.Nhs.Migration.UnitTests.csproj
index a9b7683f7..896acac85 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration.UnitTests/LearningHub.Nhs.Migration.UnitTests.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration.UnitTests/LearningHub.Nhs.Migration.UnitTests.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/WebAPI/MigrationTool/LearningHub.Nhs.Migration/LearningHub.Nhs.Migration.csproj b/WebAPI/MigrationTool/LearningHub.Nhs.Migration/LearningHub.Nhs.Migration.csproj
index 71195c130..d9a8879c8 100644
--- a/WebAPI/MigrationTool/LearningHub.Nhs.Migration/LearningHub.Nhs.Migration.csproj
+++ b/WebAPI/MigrationTool/LearningHub.Nhs.Migration/LearningHub.Nhs.Migration.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/global.json b/global.json
new file mode 100644
index 000000000..0974123a3
--- /dev/null
+++ b/global.json
@@ -0,0 +1,5 @@
+{
+ "sdk": {
+ "version": "8.0.412"
+ }
+}
\ No newline at end of file
diff --git a/nuget.config.cicd b/nuget.config.cicd
new file mode 100644
index 000000000..6187a4761
--- /dev/null
+++ b/nuget.config.cicd
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nuget.config.template b/nuget.config.template
new file mode 100644
index 000000000..b8705cbdb
--- /dev/null
+++ b/nuget.config.template
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+