Skip to content

Commit

Permalink
feat: HASSU-710 projektin reititys aktiiviseen vaiheeseen (#418)
Browse files Browse the repository at this point in the history
* lisaa projektin juurisivulle ja catch all -sivulle ohjaus aktiiviseen vaiheeseen

* lisatty katselmoinnin pohjalta virheilmoituksia
  • Loading branch information
kettunju authored Oct 7, 2022
1 parent f6fdd6a commit 777c819
Show file tree
Hide file tree
Showing 5 changed files with 71 additions and 21 deletions.
4 changes: 2 additions & 2 deletions src/components/kansalaisenEtusivu/Hakutulokset.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ type Props = {
ladataan: boolean | undefined | null;
};

function getSivuTilanPerusteella(tila: Status | null | undefined) {
export function getSivuTilanPerusteella(tila: Status | null | undefined) {
if (!tila) {
return "";
}
Expand All @@ -46,7 +46,7 @@ export default function Hakutulokset({ hakutulos, ladataan }: Props) {
const { t } = useTranslation();

if (!hakutulos && ladataan) {
return <>Ladataan...</>;
return <>{t("common:ladataan")}</>;
}

return (
Expand Down
3 changes: 3 additions & 0 deletions src/locales/fi/common.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
{
"projektin_lataamisessa_virhe": "Projektin lataamisessa tapahtui virhe",
"ladataan": "Ladataan...",
"sivua-ei-loydy": "Sivua ei löydy",
"siirrytaan-aktiiviseen-vaiheeseen": "Siirrytään aktiiviseen vaiheeseen...",
"vayla-tietosuojasivu": "https://www.vayla.fi/tietosuoja",
"polut": {
"etusivu": "Etusivu",
Expand Down
3 changes: 3 additions & 0 deletions src/locales/sv/common.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
{
"projektin_lataamisessa_virhe": "RUOTSIKSI Projektin lataamisessa tapahtui virhe",
"ladataan": "RUOTSIKSI Ladataan...",
"sivua-ei-loydy": "RUOTSIKSI Sivua ei löydy",
"siirrytaan-aktiiviseen-vaiheeseen": "RUOTSIKSI Siirrytään aktiiviseen vaiheeseen...",
"vayla-tietosuojasivu": "https://vayla.fi/sv/trafikledsverket/kontaktuppgifter/dataskyddspolicy",
"projekti_ei_ruotsin_kielella": "RUOTSIKSI Projekti ei ole saatavilla ruotsin kielellä",
"polut": {
Expand Down
42 changes: 23 additions & 19 deletions src/pages/suunnitelma/[oid]/[...all].tsx
Original file line number Diff line number Diff line change
@@ -1,34 +1,38 @@
import React from "react";
import Link from "next/link";
import React, { useEffect } from "react";
import useTranslation from "next-translate/useTranslation";
import log from "loglevel";
import { useProjektiJulkinen } from "src/hooks/useProjektiJulkinen";
import { useRouter } from "next/router";
import { getSivuTilanPerusteella } from "@components/kansalaisenEtusivu/Hakutulokset";
import { PageProps } from "@pages/_app";
import useProjektiBreadcrumbsJulkinen from "src/hooks/useProjektiBreadcrumbsJulkinen";

function ProjektiPage() {
const { t } = useTranslation("projekti");
function ProjektiPage({ setRouteLabels }: PageProps) {
useProjektiBreadcrumbsJulkinen(setRouteLabels);
const { t } = useTranslation("common");
const { data: projekti, error } = useProjektiJulkinen();
const router = useRouter();

useEffect(() => {
if (projekti) router.push(`/suunnitelma/${projekti?.oid}/${getSivuTilanPerusteella(projekti?.status)}`);
}, [projekti, router]);

if (error) {
return <></>;
return <>{t("common:projektin_lataamisessa_virhe")}</>;
}

if (!projekti) {
log.info("loading");
return <></>;
return (
<>
<p>{t("sivua-ei-loydy") + ". " + t("siirrytaan-aktiiviseen-vaiheeseen")}</p>
</>
);
}
log.info("loaded", projekti);

return (
<>
<p>
{t("ui-otsikot.nimi")}
{": "}
{projekti.velho?.nimi}
</p>
<p />
<p />
<p>
<Link href="..">
<a className="btn btn-sm btn-success mb-2">{t("ui-linkkitekstit.takaisin_listaukseen")}</a>
</Link>
</p>
<p>{t("sivua-ei-loydy") + ". " + t("siirrytaan-aktiiviseen-vaiheeseen")}</p>
</>
);
}
Expand Down
40 changes: 40 additions & 0 deletions src/pages/suunnitelma/[oid]/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import React, { useEffect } from "react";
import useTranslation from "next-translate/useTranslation";
import log from "loglevel";
import { useProjektiJulkinen } from "src/hooks/useProjektiJulkinen";
import { useRouter } from "next/router";
import { getSivuTilanPerusteella } from "@components/kansalaisenEtusivu/Hakutulokset";
import { PageProps } from "@pages/_app";
import useProjektiBreadcrumbsJulkinen from "src/hooks/useProjektiBreadcrumbsJulkinen";

function ProjektiPage({ setRouteLabels }: PageProps) {
useProjektiBreadcrumbsJulkinen(setRouteLabels);
const { t } = useTranslation("common");
const { data: projekti, error } = useProjektiJulkinen();
const router = useRouter();

useEffect(() => {
if (projekti) router.push(`/suunnitelma/${projekti?.oid}/${getSivuTilanPerusteella(projekti?.status)}`);
}, [projekti, router]);

if (error) {
return <>{t("common:projektin_lataamisessa_virhe")}</>;
}

if (!projekti) {
log.info("loading");
return (
<>
<p>{t("siirrytaan-aktiiviseen-vaiheeseen")}</p>
</>
);
}

return (
<>
<p>{t("siirrytaan-aktiiviseen-vaiheeseen")}</p>
</>
);
}

export default ProjektiPage;

0 comments on commit 777c819

Please sign in to comment.