Skip to content

Commit a398bdb

Browse files
committed
FO-2772 Fjern "," på navn til maskerte brukere og blokker trykk
1 parent abd242c commit a398bdb

File tree

6 files changed

+61
-19
lines changed

6 files changed

+61
-19
lines changed

src/components/filters/filters.less

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,13 @@
33
justify-content: space-between;
44
flex-wrap: wrap;
55
margin-bottom: 2rem;
6-
padding: 1rem 2rem 2rem 2rem;
6+
padding: 1rem 2rem;
77
background-color: white;
88

9+
> * {
10+
margin-bottom: 1rem;
11+
}
12+
913
&__dropdowns {
1014
display: flex;
1115
flex-direction: row;

src/components/filters/sokefelt/sokefelt.less

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
.sokefelt {
2+
margin-left: 1rem;
23
margin-top: auto;
34
width: 400px;
45

56
input {
7+
height: 38px;
68
font-size: 14px;
79
text-overflow: ellipsis;
810
}

src/components/user-table/body/user-table-body.less

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@
2323
text-align: center;
2424
align-items: end;
2525

26+
&--maskert {
27+
cursor: not-allowed;
28+
}
29+
2630
&:hover {
2731
position: relative;
2832
z-index: 1;
Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,48 @@
11
import React from 'react';
2+
import cls from 'classnames';
23
import { Bruker, UtkastStatus } from '../../../rest/data/bruker';
34
import { formatDateStr, formatDateTime } from '../../../utils/date-utils';
45
import { Normaltekst, Element } from 'nav-frontend-typografi';
5-
import { fjernNavFraEnhetNavn, mapBrukerStatusTilTekst } from '../../../utils';
6+
import { fjernNavFraEnhetNavn, lagBrukerNavn, mapBrukerStatusTilTekst } from '../../../utils';
67
import klarForUtsendelseIcon from './status/klar_for_utsendelse.svg';
78
import trengerBeslutterIcon from './status/trenger_beslutter.svg';
89
import trengerTilbakemeldingIcon from './status/trenger_tilbakemelding.svg';
910
import venterPaResponsIcon from './status/venter_pa_respons.svg';
1011
import { OrNothing } from '../../../utils/types/ornothing';
1112

12-
export const UserRow = (props: {bruker: Bruker, aktivEnhet: OrNothing<string>}) => {
13+
export const UserRow = (props: { bruker: Bruker, aktivEnhet: OrNothing<string> }) => {
1314
const {
1415
brukerFnr, brukerFornavn, brukerEtternavn, statusEndret,
1516
brukerOppfolgingsenhetNavn, vedtakStartet,
1617
beslutterNavn, veilederNavn, status
1718
} = props.bruker;
1819

20+
const erMaskert = brukerFnr === '';
21+
1922
function handleOnUserRowClicked() {
20-
const enhetQueryParam = props.aktivEnhet ? `?enhet=${props.aktivEnhet}` : '';
21-
window.location.href = `/veilarbpersonflatefs/${brukerFnr}${enhetQueryParam}#visVedtaksstotte`;
23+
if (!erMaskert) {
24+
const enhetQueryParam = props.aktivEnhet ? `?enhet=${props.aktivEnhet}` : '';
25+
window.location.href = `/veilarbpersonflatefs/${brukerFnr}${enhetQueryParam}#visVedtaksstotte`;
26+
}
2227
}
2328

24-
return (
25-
<li className="user-table-row" onClick={handleOnUserRowClicked}>
26-
<Normaltekst>{brukerEtternavn + ', ' + brukerFornavn}</Normaltekst>
27-
<Element>{brukerFnr}</Element>
28-
<Normaltekst>{formatDateStr(vedtakStartet)}</Normaltekst>
29+
return (
30+
<li className={cls('user-table-row', {'user-table-row--maskert': erMaskert})} onClick={handleOnUserRowClicked}>
31+
<Normaltekst>{lagBrukerNavn(brukerFornavn, brukerEtternavn)}</Normaltekst>
32+
<Element>{brukerFnr}</Element>
33+
<Normaltekst>{formatDateStr(vedtakStartet)}</Normaltekst>
2934
<UtkastStatusData status={status}/>
30-
<Element>{beslutterNavn || '-'}</Element>
31-
<Normaltekst>{veilederNavn}</Normaltekst>
32-
<Normaltekst>{formatDateTime(statusEndret)}</Normaltekst>
33-
<Normaltekst>{fjernNavFraEnhetNavn(brukerOppfolgingsenhetNavn)}</Normaltekst>
34-
</li>
35-
);
35+
<Element>{beslutterNavn || '-'}</Element>
36+
<Normaltekst>{veilederNavn}</Normaltekst>
37+
<Normaltekst>{formatDateTime(statusEndret)}</Normaltekst>
38+
<Normaltekst>{fjernNavFraEnhetNavn(brukerOppfolgingsenhetNavn)}</Normaltekst>
39+
</li>
40+
);
3641
};
3742

3843
const UtkastStatusData = (props: { status: UtkastStatus }) => {
3944
let statusIkon;
45+
4046
switch (props.status) {
4147
case UtkastStatus.TRENGER_BESLUTTER:
4248
statusIkon = trengerBeslutterIcon;
@@ -51,9 +57,11 @@ const UtkastStatusData = (props: { status: UtkastStatus }) => {
5157
statusIkon = klarForUtsendelseIcon;
5258
break;
5359
}
60+
5461
return (
5562
<span className={'status'}>
56-
<img className={'status_ikon'} src={statusIkon} alt={'status ikon'} />
57-
<Normaltekst>{mapBrukerStatusTilTekst(props.status)}</Normaltekst>
58-
</span>);
63+
<img className={'status_ikon'} src={statusIkon} alt={'status ikon'}/>
64+
<Normaltekst>{mapBrukerStatusTilTekst(props.status)}</Normaltekst>
65+
</span>
66+
);
5967
};

src/mock/data/brukere.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ function tEllerNull<T>(t: T): T | null {
2323
export const lagBrukere = (antallBrukere: number): Bruker[] => {
2424
const brukere: Bruker[] = [];
2525

26+
let maskerteBrukere = 4;
27+
2628
for (let i = 0; i < antallBrukere; i++) {
2729
const randomEnhet = faker.random.arrayElement(enheter);
2830
const beslutterNavn = tEllerNull(faker.name.firstName() + ' ' + faker.name.lastName());
@@ -39,6 +41,14 @@ export const lagBrukere = (antallBrukere: number): Bruker[] => {
3941
statusEndret: faker.date.recent().toISOString()
4042
};
4143

44+
if (maskerteBrukere > 0) {
45+
bruker.brukerFnr = '';
46+
bruker.brukerFornavn = '';
47+
bruker.brukerEtternavn = '';
48+
49+
maskerteBrukere--;
50+
}
51+
4252
brukere.push(bruker);
4353
}
4454

src/utils/index.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,20 @@ export function fjernNavFraEnhetNavn(enhetNavn: string): string {
1515
return enhetNavn.replace('NAV', '').trim();
1616
}
1717

18+
export function lagBrukerNavn(fornavn: string, etternavn: string): string {
19+
const manglerFornavn = fornavn === '';
20+
const manglerEtternavn = etternavn === '';
21+
22+
if (manglerFornavn && manglerEtternavn) {
23+
return '';
24+
} else if (manglerFornavn || manglerEtternavn) {
25+
// Skal egentlig ikke skje, men hvis ett av navnene mangler så trenger vi ikke å separere med ","
26+
return fornavn + etternavn;
27+
}
28+
29+
return fornavn + ', ' + etternavn;
30+
}
31+
1832
export function mapBrukerStatusTilTekst(status: UtkastStatus): string {
1933
switch (status) {
2034
case UtkastStatus.TRENGER_BESLUTTER:

0 commit comments

Comments
 (0)