diff --git a/frontend/app/(auth)/layout.tsx b/frontend/app/(auth)/layout.tsx new file mode 100644 index 0000000..d6d18be --- /dev/null +++ b/frontend/app/(auth)/layout.tsx @@ -0,0 +1,17 @@ +import React from 'react'; +import { cookies } from 'next/headers'; +import { redirect } from 'next/navigation'; + +export default async function LoggedUserLayout({ + children, +}: { + children: React.ReactNode; +}) { + const cookieStore = await cookies(); + const token = cookieStore.get('token')?.value; + if (token) { + redirect('/trips'); + } + + return <>{children}>; +} diff --git a/frontend/app/(root)/search/page.tsx b/frontend/app/(root)/search/page.tsx index db92c38..94aeac8 100644 --- a/frontend/app/(root)/search/page.tsx +++ b/frontend/app/(root)/search/page.tsx @@ -4,7 +4,6 @@ import React, { useEffect, useState } from 'react'; import { useSearchParams } from 'next/navigation'; import { UserSearch } from '@/validation/userProfileSchemas'; import UserTile from '@/components/shared/UserTile'; -import { getToken, logout } from '@/lib/auth'; import axiosInstance from '@/lib/axiosInstance'; const SearchPage = () => { @@ -20,15 +19,9 @@ const SearchPage = () => { setLoading(true); setError(null); - const token = await getToken(); - if (!token) { - logout(); - return; - } try { const response = await axiosInstance.get(`user-info/search`, { params: { name: query, page: 0, size: 20 }, - headers: { Authorization: `Bearer ${token}` }, }); setResults(response.data.content || []); } catch (error) { diff --git a/frontend/app/(root)/trips/page.tsx b/frontend/app/(root)/trips/page.tsx index dc16772..c132692 100644 --- a/frontend/app/(root)/trips/page.tsx +++ b/frontend/app/(root)/trips/page.tsx @@ -76,7 +76,7 @@ function Page() { return (