diff --git a/src/sider/sokperson/SokPerson.tsx b/src/sider/sokperson/SokPerson.tsx index 799ccc94..d263b5ee 100644 --- a/src/sider/sokperson/SokPerson.tsx +++ b/src/sider/sokperson/SokPerson.tsx @@ -95,6 +95,71 @@ function logSokPersonResults(amount: number, requestDTO: SokDTO) { }); } +interface LogSokPersonErrorProps { + birthdate: string; + isValidBirthdate: boolean; + isInvalidBirthdate: boolean; + initials: string; + isValidInitials: boolean; + isInvalidInitials: boolean; + isError: boolean; +} + +function logSokPersonError({ + birthdate, + isValidBirthdate, + isInvalidBirthdate, + initials, + isValidInitials, + isInvalidInitials, + isError, +}: LogSokPersonErrorProps) { + Amplitude.logEvent({ + type: Amplitude.EventType.ErrorMessageShowed, + data: { + url: window.location.href, + handling: 'Søk etter sykmeldt - feilmeldinger', + feilmelding: + 'Fødselsdato: ' + + getValidationMessage({ + value: birthdate, + isValid: isValidBirthdate, + isInvalid: isInvalidBirthdate, + }) + + ' - Initialer: ' + + getValidationMessage({ + value: initials, + isValid: isValidInitials, + isInvalid: isInvalidInitials, + }) + + (isError ? ' - Feil ved søk' : ''), + }, + }); +} + +interface ValidationArgs { + value: string; + isValid: boolean; + isInvalid: boolean; +} + +function getValidationMessage({ + value, + isValid, + isInvalid, +}: ValidationArgs): string { + if (value === '') { + return 'ingen innhold'; + } + if (isValid) { + return 'gyldig innhold'; + } + if (isInvalid) { + return 'ugyldig innhold'; + } + return ''; +} + function InitialerLabel() { return (