From 51173f7b96a4be559e003992b938e0ac730ed45d Mon Sep 17 00:00:00 2001 From: AnjuJose011 <154979799+AnjuJose011@users.noreply.github.com> Date: Mon, 18 Mar 2024 08:49:59 +0000 Subject: [PATCH] Fixes-TD-3744 --- .../Controllers/AccountController.cs | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/LearningHub.Nhs.WebUI/Controllers/AccountController.cs b/LearningHub.Nhs.WebUI/Controllers/AccountController.cs index 2bd4bb997..bcc43b6e6 100644 --- a/LearningHub.Nhs.WebUI/Controllers/AccountController.cs +++ b/LearningHub.Nhs.WebUI/Controllers/AccountController.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Net; using System.Net.Http; + using System.Text.RegularExpressions; using System.Threading.Tasks; using elfhHub.Nhs.Models.Common; using elfhHub.Nhs.Models.Entities; @@ -428,6 +429,15 @@ public async Task CreateAccountCountrySearch() public async Task CreateAccountCountrySelection(AccountCreationViewModel accountCreationViewModel) { var accountDetails = await this.multiPageFormService.GetMultiPageFormData(MultiPageFormDataFeature.AddRegistrationPrompt, this.TempData); + if (!string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) + { + string filterText = Regex.Replace(accountCreationViewModel.FilterText, "[:!@#$%^&*()}{|\":?><\\[\\]\\;'/.,~]", " "); + if (string.IsNullOrWhiteSpace(filterText)) + { + this.ModelState.AddModelError("FilterText", CommonValidationErrorMessages.SearchTermRequired); + return this.View("CreateAccountCountrySearch", accountCreationViewModel); + } + } if (string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) { @@ -565,6 +575,16 @@ public async Task CreateAccountSearchRole(AccountCreationViewMode public async Task CreateAccountCurrentRole(AccountCreationViewModel accountCreationViewModel) { var accountCreation = await this.multiPageFormService.GetMultiPageFormData(MultiPageFormDataFeature.AddRegistrationPrompt, this.TempData); + if (!string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) + { + string filterText = Regex.Replace(accountCreationViewModel.FilterText, "[:!@#$%^&*()}{|\":?><\\[\\]\\;'/.,~]", " "); + if (string.IsNullOrWhiteSpace(filterText)) + { + this.ModelState.AddModelError("FilterText", CommonValidationErrorMessages.SearchTermRequired); + return this.View("CreateAccountSearchRole", new AccountCreationViewModel { RegionId = accountCreation.RegionId, ReturnToConfirmation = accountCreationViewModel.ReturnToConfirmation }); + } + } + if (string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) { var currentJobRole = int.TryParse(accountCreation.CurrentRole, out int currentRole); @@ -749,6 +769,18 @@ public async Task CreateAccountPrimarySpecialtySelection(AccountC } var optionalSpecialty = await this.specialtyService.GetSpecialtiesAsync(); + if (!string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) + { + string filterText = Regex.Replace(accountCreationViewModel.FilterText, "[:!@#$%^&*()}{|\":?><\\[\\]\\;'/.,~]", " "); + if (string.IsNullOrWhiteSpace(filterText)) + { + this.ModelState.AddModelError("PrimarySpecialtyId", CommonValidationErrorMessages.SpecialtyNotApplicable); + accountCreationViewModel.RegistrationNumber = accountCreation.RegistrationNumber; + accountCreationViewModel.CurrentRole = accountCreation.CurrentRole; + return this.View("CreateAccountPrimarySpecialty", accountCreationViewModel); + } + } + if (string.IsNullOrWhiteSpace(accountCreationViewModel.FilterText)) { if (!string.IsNullOrWhiteSpace(accountCreation.PrimarySpecialtyId))