diff --git a/client/src/pages/reports/EngagementDateFormPartial.js b/client/src/pages/reports/EngagementDateFormPartial.js index 3fab56c790..0bf5f5993f 100644 --- a/client/src/pages/reports/EngagementDateFormPartial.js +++ b/client/src/pages/reports/EngagementDateFormPartial.js @@ -74,7 +74,8 @@ const EngagementDatePartialFormWithDuration = ({ onWheelCapture={event => event.currentTarget.blur()} // Prevent scroll action on number input onChange={event => { const safeVal = - utils.preventNegativeAndLongDigits(event.target.value, 4) || null + utils.preventNonPositiveAndLongDigits(event.target.value, 4) || + null setFieldTouched("duration", true, false) setFieldValue("duration", safeVal, false) validateFieldDebounced("duration") diff --git a/client/src/utils.js b/client/src/utils.js index 825dd60317..816423f9cd 100644 --- a/client/src/utils.js +++ b/client/src/utils.js @@ -199,11 +199,11 @@ export default { ) }, - preventNegativeAndLongDigits: function(valueStr, maxLen) { + preventNonPositiveAndLongDigits: function(valueStr, maxLen) { let safeVal const dangerVal = Number(valueStr) - if (!isNaN(dangerVal) && dangerVal < 0) { - safeVal = "0" + if (!isNaN(dangerVal) && dangerVal <= 0) { + safeVal = null } else { const nonDigitsRemoved = valueStr.replace(/\D/g, "") safeVal = diff --git a/client/tests/webdriver/customFieldsSpecs/createReport.spec.js b/client/tests/webdriver/customFieldsSpecs/createReport.spec.js index 38e19ca37c..48301ad5cf 100644 --- a/client/tests/webdriver/customFieldsSpecs/createReport.spec.js +++ b/client/tests/webdriver/customFieldsSpecs/createReport.spec.js @@ -9,7 +9,7 @@ const INVALID_ENGAGEMENT_DURATION_1 = "123456" const INVALID_ENGAGEMENT_DURATION_2 = "-1" // positive sliced at 4th digit, negative should turn into 0 const VALID_ENGAGEMENT_DURATION_1 = "1234" -const VALID_ENGAGEMENT_DURATION_2 = "0" +const VALID_ENGAGEMENT_DURATION_2 = "" const PERSON = "EF 2.1" const PERSON_VALUE_1 = "HENDERSON, Henry"