Skip to content

Commit

Permalink
Varsel veileder om deltaker under 18 aar (#1199)
Browse files Browse the repository at this point in the history
* viser en feilmelding om at deltaker er under 18 år når veileder oppretter en avtale.
I fremtiden skal det være mulig å trykke en knapp for å ignorere feilemldingen. Det må legges en knapp etter feilmelding om at det er greit slik at det er mulig å opprette en avtale etter at knappen trykkes. Denne knappen må lages.

* Det skal være mulig å trykke en knapp for å bekrefte at samtykke til foreldre har blitt sendt om veileder skal lage en avtae for en person under 18 år. Det må sendes en samtykke til foresatte først. Det må bekreftes her.

* Rettet useState navn fra setHarHarSamtykkeFraForesatte til setHarSamtykkeFraForesatte => ordet har har kommer to ganger her.

* forenklet visning av foreldre samtykke varselmelding. Den skal alltid vises når deltaker er under 18 år som en varsel under deltaker fnr ved oppretting av avtale

* fjernet unødvendig import

* korrigert ordet for varsel når deltaker er under 18 år i lag ny avtale skjermbilde. Tekstendring fra innhente til innhentes

---------

Co-authored-by: Millad Dagdoni <[email protected]>
  • Loading branch information
d142796 and Millad authored Feb 26, 2024
1 parent f310519 commit 56a9785
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 2 deletions.
20 changes: 18 additions & 2 deletions src/OpprettAvtale/OpprettAvtaleVeileder/HvemSkalInngaaAvtalen.tsx
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
import React, { Dispatch, SetStateAction } from 'react';
import { TiltaksType } from '@/types/avtale';
import { BodyShort, Heading, TextField } from '@navikt/ds-react';
import { setFnrBrukerOnChange } from '@/utils/fnrUtils';
import { Alert, BodyShort, Heading, TextField } from '@navikt/ds-react';
import { erUnder18, setFnrBrukerOnChange } from '@/utils/fnrUtils';
import VerticalSpacer from '@/komponenter/layout/VerticalSpacer';
import Innholdsboks from '@/komponenter/Innholdsboks/Innholdsboks';
import { AlleredeOpprettetInfo } from '@/komponenter/alleredeOpprettetTiltak/api/AlleredeOpprettetAvtaleProvider';
import AlleredeOpprettetAvtaleAdvarsel from '@/komponenter/alleredeOpprettetTiltak/advarsel/AlleredeOpprettetAvtaleAdvarsel';
import BEMHelper from '@/utils/bem';
import './HvemSkalInngaaAvtalen.less';
import EksternLenke from '@/komponenter/navigation/EksternLenke';

interface Props {
deltakerFnr: string;
Expand Down Expand Up @@ -81,6 +82,21 @@ const HvemSkalInngaaAvtalen: React.FC<Props> = ({
/>
)}
</div>
<div>
{erUnder18(deltakerFnr) && (
<>
<Alert variant="warning">
Denne deltakeren er under 18 år. Det må derfor innhentes samtykke fra foresatte på at
deltakeren kan delta i arbeidsrettet tiltak.
<VerticalSpacer rem={1} />
<EksternLenke href={'https://www.nav.no/samtykke-foresatte'}>
Samtykke fra foresatte {''}
</EksternLenke>
</Alert>
<VerticalSpacer rem={1} />
</>
)}
</div>
<TextField
className={cls.element('typo-element')}
label="Virksomhetsnummer"
Expand Down
12 changes: 12 additions & 0 deletions src/utils/fnrUtils.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { expect, test } from 'vitest';
import { erUnder18 } from '@/utils/fnrUtils';

test('skal slå false fordi person er over 18 år', () => {
const bursdagDato: string = '01128802211';
expect(erUnder18(bursdagDato)).toBe(false);
});

test('skal slå true fordi person er under 18 år', () => {
const bursdagDato: string = '07062376680';
expect(erUnder18(bursdagDato)).toBe(true);
});
6 changes: 6 additions & 0 deletions src/utils/fnrUtils.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { ChangeEvent, Dispatch, SetStateAction } from 'react';
import moment from 'moment/moment';

/** Beregner gyldighet av fødselsnr med utgangspunkt i mod11.
* @link https://no.wikipedia.org/wiki/F%C3%B8dselsnummer
Expand Down Expand Up @@ -115,5 +116,10 @@ export const setFnrBrukerOnChange = (
setFnrFeil(undefined);
}
};
export const erUnder18 = (fnr: string): boolean => {
const idag = moment();
const bursdagDatoMoment = moment(genererFnrdatostringFraFnr(fnr).isoDatostring);
return idag.diff(bursdagDatoMoment, 'years') < 18;
};

export { validerFnr, genererFnrdatostringFraFnr };

0 comments on commit 56a9785

Please sign in to comment.