From c4d35c2eff6084eec96e4073e09f0fbaa852cd3f Mon Sep 17 00:00:00 2001 From: Ibrahim Munir-Zubair Date: Wed, 15 Sep 2021 10:01:41 +0100 Subject: [PATCH 1/2] HEEDLS-505 Change max filesize for bulk upload to 5MiB (but call it 5MB) --- .../TrackingSystem/Delegates/UploadDelegatesViewModel.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/UploadDelegatesViewModel.cs b/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/UploadDelegatesViewModel.cs index ac18f8959b..b0e7a24ce5 100644 --- a/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/UploadDelegatesViewModel.cs +++ b/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/UploadDelegatesViewModel.cs @@ -19,7 +19,7 @@ public UploadDelegatesViewModel(DateTime welcomeEmailDate) [Required(ErrorMessage = "Delegates update file is required")] [AllowedExtensions(new[] { ".xlsx" }, "Delegates update file must be in xlsx format")] - [MaxFileSize(5*1000*1000, "Maximum allowed file size is 5000KB")] + [MaxFileSize(5*1024*1024, "Maximum allowed file size is 5MB")] public IFormFile? DelegatesFile { get; set; } public DateTime? GetWelcomeEmailDate() From 17cda69dad9609c92b2eda2c8a0585562030dbee Mon Sep 17 00:00:00 2001 From: Ibrahim Munir-Zubair Date: Wed, 15 Sep 2021 10:15:25 +0100 Subject: [PATCH 2/2] HEEDLS-505 Use excel sheet header names in bulk upload error messages --- .../Delegates/BulkUploadResultsViewModel.cs | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/BulkUploadResultsViewModel.cs b/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/BulkUploadResultsViewModel.cs index 2f3462d69e..e15f8e2587 100644 --- a/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/BulkUploadResultsViewModel.cs +++ b/DigitalLearningSolutions.Web/ViewModels/TrackingSystem/Delegates/BulkUploadResultsViewModel.cs @@ -4,7 +4,6 @@ using System.Collections.Generic; using System.Linq; using DigitalLearningSolutions.Data.Models.DelegateUpload; - using DigitalLearningSolutions.Web.Helpers; public class BulkUploadResultsViewModel { @@ -29,29 +28,29 @@ private string MapReasonToErrorMessage(BulkUploadResult.ErrorReason reason) return reason switch { BulkUploadResult.ErrorReason.InvalidJobGroupId => - "Job group ID was not valid, please ensure a valid Job Group ID number is provided (use the 'Job Groups' worksheet in the downloaded template for a list of valid IDs)", + "JobGroupID was not valid, please ensure a valid JobGroupID number is provided (use the 'Job Groups' worksheet in the downloaded template for a list of valid IDs)", BulkUploadResult.ErrorReason.MissingLastName => - "Last name was not provided. Last name is a required field and cannot be left blank", + "LastName was not provided. LastName is a required field and cannot be left blank", BulkUploadResult.ErrorReason.MissingFirstName => - "First name was not provided. First name is a required field and cannot be left blank", + "FirstName was not provided. FirstName is a required field and cannot be left blank", BulkUploadResult.ErrorReason.MissingEmail => - "Email was not provided. Email is a required field and cannot be left blank", + "EmailAddress was not provided. EmailAddress is a required field and cannot be left blank", BulkUploadResult.ErrorReason.InvalidActive => "Active field could not be read. The Active field should contain 'TRUE' or 'FALSE'", BulkUploadResult.ErrorReason.NoRecordForDelegateId => - "No existing delegate record was found with the Delegate ID provided", + "No existing delegate record was found with the DelegateID provided", BulkUploadResult.ErrorReason.UnexpectedErrorForCreate => "Unexpected error when creating delegate", BulkUploadResult.ErrorReason.UnexpectedErrorForUpdate => "Unexpected error when updating delegate details", BulkUploadResult.ErrorReason.ParameterError => "Parameter error when updating delegate details", - BulkUploadResult.ErrorReason.AliasIdInUse => "The Alias ID is already in use by another delegate", + BulkUploadResult.ErrorReason.AliasIdInUse => "The AliasID is already in use by another delegate", BulkUploadResult.ErrorReason.EmailAddressInUse => - "The Email address is already in use by another delegate", - BulkUploadResult.ErrorReason.TooLongFirstName => CommonValidationErrorMessages.TooLongFirstName, - BulkUploadResult.ErrorReason.TooLongLastName => CommonValidationErrorMessages.TooLongLastName, - BulkUploadResult.ErrorReason.TooLongEmail => "Email address must be 250 characters or fewer", - BulkUploadResult.ErrorReason.TooLongAliasId => CommonValidationErrorMessages.TooLongAlias, + "The EmailAddress is already in use by another delegate", + BulkUploadResult.ErrorReason.TooLongFirstName => "FirstName must be 250 characters or fewer", + BulkUploadResult.ErrorReason.TooLongLastName => "LastName must be 250 characters or fewer", + BulkUploadResult.ErrorReason.TooLongEmail => "EmailAddress must be 250 characters or fewer", + BulkUploadResult.ErrorReason.TooLongAliasId => "AliasID must be 250 characters or fewer", BulkUploadResult.ErrorReason.TooLongAnswer1 => "Answer1 must be 100 characters or fewer", BulkUploadResult.ErrorReason.TooLongAnswer2 => "Answer2 must be 100 characters or fewer", BulkUploadResult.ErrorReason.TooLongAnswer3 => "Answer3 must be 100 characters or fewer", @@ -59,8 +58,9 @@ private string MapReasonToErrorMessage(BulkUploadResult.ErrorReason reason) BulkUploadResult.ErrorReason.TooLongAnswer5 => "Answer5 must be 100 characters or fewer", BulkUploadResult.ErrorReason.TooLongAnswer6 => "Answer6 must be 100 characters or fewer", BulkUploadResult.ErrorReason.BadFormatEmail => - "Email address must be in the correct format, like name@example.com", - BulkUploadResult.ErrorReason.WhitespaceInEmail => CommonValidationErrorMessages.WhitespaceInEmail, + "EmailAddress must be in the correct format, like name@example.com", + BulkUploadResult.ErrorReason.WhitespaceInEmail => + "EmailAddress must not contain any whitespace characters", _ => throw new ArgumentOutOfRangeException(nameof(reason), reason, null) }; }