8000 Add titles and fix unauthed redirect to login · ddvleeuwen/intro-frontend@8677e02 · GitHub
[go: up one dir, main page]

Skip to content

Commit 8677e02

Browse files
committed
Add titles and fix unauthed redirect to login
1 parent 3ab444b commit 8677e02

File tree

7 files changed

+27
-4
lines changed

7 files changed

+27
-4
lines changed

src/context/AuthContextProvider.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const AuthContextProvider = ({ children }: AuthContextProviderType) => {
1111
const route = useLocation();
1212

1313
if (!localStorage.getItem('token')) {
14-
return <Navigate to={`/login?to=${route.pathname}`}/>;
14+
return <Navigate replace={true} to={`/login?to=${route.pathname}`}/>;
1515
}
1616

1717
return (

src/pages/LandingPage.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import Headline from "../components/landing/Headline.tsx";
2+
import { useEffect } from "react";
3+
import { setSubTitle } from "../utils/title.tsx";
24

35
const LandingPage = () => {
6+
useEffect(() => setSubTitle('Meet new people'), []);
7+
48
return (
59
<div className="flex flex-col">
610
<Headline />

src/pages/LoginPage.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
import { Button } from '@headlessui/react'
22
import { useNavigate } from "react-router";
3-
import { useState } from "react";
3+
import { useEffect, useState } from "react";
44
import Field from "../components/generic/Field.tsx";
55
import { login } from "../services/auth.service.tsx";
6+
import { setSubTitle } from "../utils/title.tsx";
67

78
const LoginPage = () => {
9+
useEffect(() => setSubTitle('Login'), []);
10+
811
const queryParameters = new URLSearchParams(window.location.search)
912
const code = queryParameters.get("code")
1013

@@ -17,7 +20,7 @@ const LoginPage = () => {
1720
if (/^\d+$/.test(loginCode)) {
1821
login(loginCode).then(() => {
1922
// use react-router route to /team
20-
navigate("/team", { replace: true });
23+
navigate("/team");
2124
}).catch(() => {
2225
setError("Wrong login code, please try again");
2326
});

src/pages/team/BingoPage.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
import { useEffect } from "react";
2+
import { setSubTitle } from "../../utils/title.tsx";
3+
14
const BingoPage = () => {
5+
useEffect(() => setSubTitle('Bingo'), []);
6+
27
return <div>BingoPage</div>;
38
}
49

src/pages/team/CrazyPage.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@ import { useEffect, useState } from "react";
22
import { getChallenges } from "../../services/challenge.service.tsx";
33
import { Challenge } from "../../model/challenge.tsx";
44
import CrazyChallenge from "../../components/crazy/CrazyChallenge.tsx";
5+
import { setSubTitle } from "../../utils/title.tsx";
56

67
const CrazyPage = () => {
8+
useEffect(() => setSubTitle('Crazy88'), []);
9+
710
const [ challenges, setChallenges ] = useState<Challenge[]>([]);
811

912
useEffect(() => {

src/pages/team/TeamOverviewPage.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
import { Link } from "react-router-dom";
2-
import { useState } from "react";
2+
import { useEffect, useState } from "react";
33
import BingoPage from "./BingoPage.tsx";
44
import CrazyPage from "./CrazyPage.tsx";
55
import AuthContextProvider from "../../context/AuthContextProvider.tsx";
6+
import { setSubTitle } from "../../utils/title.tsx";
67

78
const TeamOverviewPage = () => {
9+
useEffect(() => setSubTitle('Crazy88'), []);
10+
811
const queryParameters = new URLSearchParams(window.location.search)
912
const page = queryParameters.get("page")
1013
const [ isRight, setIsRight ] = useState(page == "bingo");

src/utils/title.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { cst } from "../constants.tsx";
2+
3+
export const setSubTitle = (subTitle: string) => {
4+
document.title = `${cst.title} - ${subTitle}`
5+
}

0 commit comments

Comments
 (0)
0