Skip to content

Commit

Permalink
La til muligheten for "default"-navn på samarbeid.
Browse files Browse the repository at this point in the history
  • Loading branch information
sstensby committed Nov 5, 2024
1 parent 4059bde commit 5baa865
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 10 deletions.
9 changes: 6 additions & 3 deletions client/src/Pages/Virksomhet/Samarbeid/EndreSamarbeidModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,12 @@ export const TextFieldStyled = styled(TextField)`
width: 100%;
`;

export const DetaljerWrapper = styled.div`
export const DetaljerWrapper = styled.div<{ $disabled?: boolean }>`
display: flex;
flex-direction: row;
justify-content: space-between;
gap: 0.5rem;
opacity: ${({ $disabled }) => ($disabled ? 0.25 : 1)};
`;

interface EndreSamarbeidModalProps {
Expand All @@ -46,6 +47,8 @@ interface EndreSamarbeidModalProps {
iaSak: IASak;
}

export const MAX_LENGDE_SAMARBEIDSNAVN = 25;

export const EndreSamarbeidModal = ({
open,
setOpen,
Expand Down Expand Up @@ -143,7 +146,7 @@ export const EndreSamarbeidModal = ({
{defaultNavnHvisTomt(samarbeid.navn)}&quot;
</BodyShort>
<TextFieldStyled
maxLength={25}
maxLength={MAX_LENGDE_SAMARBEIDSNAVN}
size="small"
label="Navngi samarbeid"
value={navn}
Expand All @@ -170,7 +173,7 @@ export const EndreSamarbeidModal = ({

<DetaljerWrapper>
<Detail>Husk, aldri skriv personopplysninger.</Detail>
<Detail>{antallTegn}/25 tegn</Detail>
<Detail>{antallTegn}/{MAX_LENGDE_SAMARBEIDSNAVN} tegn</Detail>
</DetaljerWrapper>
<Detail style={{ gridColumn: "1", marginTop: "1.25rem" }}>
Navnet kan vises på <i>Min Side Arbeidsgiver </i>
Expand Down
36 changes: 29 additions & 7 deletions client/src/Pages/Virksomhet/Samarbeid/NyttSamarbeidModal.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { IASak } from "../../../domenetyper/domenetyper";
import { BodyShort, Button, Detail, Heading, Modal } from "@navikt/ds-react";
import { BodyShort, Button, Checkbox, Detail, Heading, Modal } from "@navikt/ds-react";
import { StyledModal } from "../../../components/Modal/StyledModal";
import React, { useState } from "react";

Expand All @@ -8,24 +8,30 @@ import { useHentAktivSakForVirksomhet } from "../../../api/lydia-api/virksomhet"
import { nyHendelsePåSak } from "../../../api/lydia-api/sak";
import {
DetaljerWrapper,
MAX_LENGDE_SAMARBEIDSNAVN,
ModalBodyInnholdGrid,
TextFieldStyled,
} from "./EndreSamarbeidModal";
import { useNavigate } from "react-router-dom";
import { useHentSamarbeid } from "../../../api/lydia-api/spørreundersøkelse";
import { Virksomhet } from "../../../domenetyper/virksomhet";

interface NyttSamarbeidProps {
iaSak: IASak;
åpen: boolean;
setÅpen: React.Dispatch<React.SetStateAction<boolean>>;
virksomhet: Virksomhet;
}


export const NyttSamarbeidModal = ({
iaSak,
åpen,
setÅpen,
virksomhet,
}: NyttSamarbeidProps) => {
const [navn, setNavn] = useState("");
const [brukVirksomhetsnavn, setBrukVirksomhetsnavn] = useState(false);
const inputRef = React.useRef<HTMLInputElement>(null);
const antallTegn = navn.length;
const lukkModal = () => {
Expand All @@ -38,10 +44,12 @@ export const NyttSamarbeidModal = ({
const { mutate: hentHistorikkPåNytt } = useHentSamarbeidshistorikk(
iaSak.orgnr,
);
const { mutate: hentSamarbeidPåNytt } = useHentSamarbeid(
const { mutate: hentSamarbeidPåNytt, data: samarbeidData } = useHentSamarbeid(
iaSak.orgnr,
iaSak.saksnummer,
);
const samarbeidsnavnBasertPåVirksomhet = virksomhet.navn.length > MAX_LENGDE_SAMARBEIDSNAVN ? `${virksomhet.navn.substring(0, MAX_LENGDE_SAMARBEIDSNAVN - 3)}...` : virksomhet.navn;
const kanBrukeVirksomhetsnavn = samarbeidData?.find((s) => s.navn === samarbeidsnavnBasertPåVirksomhet) === undefined;
const navigate = useNavigate();

const nyttSamarbeid = () => {
Expand Down Expand Up @@ -82,6 +90,7 @@ export const NyttSamarbeidModal = ({
// Fokus på inputfeltet når modalen åpnes
if (åpen) {
inputRef.current?.focus();
setBrukVirksomhetsnavn(false);
}
}, [åpen]);

Expand All @@ -106,7 +115,20 @@ export const NyttSamarbeidModal = ({
Her kan du opprette og navngi ulike samarbeid med
virksomheten.
</BodyShort>

{
kanBrukeVirksomhetsnavn && (
<Checkbox
size="small"
checked={brukVirksomhetsnavn}
onChange={() => {
setBrukVirksomhetsnavn(!brukVirksomhetsnavn);
if (!brukVirksomhetsnavn) {
setNavn(samarbeidsnavnBasertPåVirksomhet);
}
}}
>Bruk virksomhetsnavn</Checkbox>
)
}
<div
style={{
gridColumn: "1 / span 2",
Expand All @@ -115,7 +137,8 @@ export const NyttSamarbeidModal = ({
>
<TextFieldStyled
ref={inputRef}
maxLength={25}
readOnly={brukVirksomhetsnavn}
maxLength={MAX_LENGDE_SAMARBEIDSNAVN}
size="small"
label="Navngi samarbeid"
value={navn}
Expand All @@ -132,10 +155,9 @@ export const NyttSamarbeidModal = ({
}}
/>
</div>

<DetaljerWrapper>
<DetaljerWrapper $disabled={brukVirksomhetsnavn}>
<Detail>Husk, aldri skriv personopplysninger.</Detail>
<Detail>{antallTegn}/25 tegn</Detail>
<Detail>{antallTegn}/{MAX_LENGDE_SAMARBEIDSNAVN} tegn</Detail>
</DetaljerWrapper>
<Detail style={{ gridColumn: "1", marginTop: "1.25rem" }}>
Navnet kan vises på <i>Min Side Arbeidsgiver </i>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@ export default function VirksomhetOgSamarbeidsHeader({
{iaSak && brukerErEierAvSak && (
<NyttSamarbeidModal
iaSak={iaSak}
virksomhet={virksomhet}
åpen={nyttSamarbeidModalÅpen}
setÅpen={setNyttSamarbeidModalÅpen}
/>
Expand Down

0 comments on commit 5baa865

Please sign in to comment.