diff --git a/src/app/[locale]/community/archive/page.jsx b/src/app/[locale]/community/archive/page.jsx
index 4c0cbdb0..6917f228 100644
--- a/src/app/[locale]/community/archive/page.jsx
+++ b/src/app/[locale]/community/archive/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Archive from '@/components/community/Archive'
+import { initCheck } from '@/util/session-util'
+
+export default async function CommunityArchivePage() {
+ await initCheck()
-export default function CommunityArchivePage() {
return (
<>
diff --git a/src/app/[locale]/community/faq/page.jsx b/src/app/[locale]/community/faq/page.jsx
index 3f764566..2b9d5452 100644
--- a/src/app/[locale]/community/faq/page.jsx
+++ b/src/app/[locale]/community/faq/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Faq from '@/components/community/Faq'
+import { initCheck } from '@/util/session-util'
+
+export default async function CommunityFaqPage() {
+ await initCheck()
-export default function CommunityFaqPage() {
return (
<>
diff --git a/src/app/[locale]/community/notice/page.jsx b/src/app/[locale]/community/notice/page.jsx
index 5372112e..d2157b20 100644
--- a/src/app/[locale]/community/notice/page.jsx
+++ b/src/app/[locale]/community/notice/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Notice from '@/components/community/Notice'
+import { initCheck } from '@/util/session-util'
+
+export default async function CommunityNoticePage() {
+ await initCheck()
-export default function CommunityNoticePage() {
return (
<>
diff --git a/src/app/[locale]/intro/page.jsx b/src/app/[locale]/intro/page.jsx
index 3c96c165..8d560ce5 100644
--- a/src/app/[locale]/intro/page.jsx
+++ b/src/app/[locale]/intro/page.jsx
@@ -1,6 +1,9 @@
import Intro from '@/components/Intro'
+import { initCheck } from '@/util/session-util'
+
+export default async function IntroPage() {
+ await initCheck()
-export default function IntroPage() {
return (
<>
diff --git a/src/app/[locale]/layout.js b/src/app/[locale]/layout.js
index 9ae6b1b9..c7966ab6 100644
--- a/src/app/[locale]/layout.js
+++ b/src/app/[locale]/layout.js
@@ -5,6 +5,7 @@ import { LocaleProvider } from './LocaleProvider'
export default function LocaleLayout({ children }) {
const locale = useCurrentLocale()
+
return (
<>
diff --git a/src/app/[locale]/management/plan/page.jsx b/src/app/[locale]/management/plan/page.jsx
index 61937238..5fefa62a 100644
--- a/src/app/[locale]/management/plan/page.jsx
+++ b/src/app/[locale]/management/plan/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Plan from '@/components/management/Plan'
+import { initCheck } from '@/util/session-util'
+
+export default async function ManagementPlanPage() {
+ await initCheck()
-export default function ManagementPlanPage() {
return (
<>
diff --git a/src/app/[locale]/management/stuff/page.jsx b/src/app/[locale]/management/stuff/page.jsx
index 15131ba6..e2d3c1cd 100644
--- a/src/app/[locale]/management/stuff/page.jsx
+++ b/src/app/[locale]/management/stuff/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Stuff from '@/components/management/Stuff'
+import { initCheck } from '@/util/session-util'
+
+export default async function ManagementStuffPage() {
+ await initCheck()
-export default function ManagementStuffPage() {
return (
<>
diff --git a/src/app/[locale]/master/company/page.jsx b/src/app/[locale]/master/company/page.jsx
index 6ee60f0e..15eda41c 100644
--- a/src/app/[locale]/master/company/page.jsx
+++ b/src/app/[locale]/master/company/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Company from '@/components/master/Company'
+import { initCheck } from '@/util/session-util'
+
+export default async function MasterCompanyPage() {
+ await initCheck()
-export default function MasterCompanyPage() {
return (
<>
diff --git a/src/app/[locale]/master/price/page.jsx b/src/app/[locale]/master/price/page.jsx
index c0e5a40d..a641d6bb 100644
--- a/src/app/[locale]/master/price/page.jsx
+++ b/src/app/[locale]/master/price/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Price from '@/components/master/Price'
+import { initCheck } from '@/util/session-util'
+
+export default async function MasterPricePage() {
+ await initCheck()
-export default function MasterPricePage() {
return (
<>
diff --git a/src/app/[locale]/page.js b/src/app/[locale]/page.js
index e2c11aed..bbdcd96d 100644
--- a/src/app/[locale]/page.js
+++ b/src/app/[locale]/page.js
@@ -1,6 +1,6 @@
-import MainPage from '@/components/Main'
import { getSession } from '@/lib/authActions'
import { getCurrentLocale } from '@/locales/server'
+import MainPage from '@/components/Main'
export default async function page() {
const session = await getSession()
diff --git a/src/app/[locale]/playground/page.jsx b/src/app/[locale]/playground/page.jsx
index b8a7f496..66d83c34 100644
--- a/src/app/[locale]/playground/page.jsx
+++ b/src/app/[locale]/playground/page.jsx
@@ -1,6 +1,14 @@
import Playground from '@/components/Playground'
+import { initCheck } from '@/util/session-util'
+
+export default async function PlaygroundPage() {
+ // const { session } = await checkSession()
+
+ // if (!session.isLoggedIn) {
+ // redirect('/login')
+ // }
+ await initCheck()
-export default function PlaygroundPage() {
return (
<>
diff --git a/src/app/[locale]/roof/page.jsx b/src/app/[locale]/roof/page.jsx
index 4d9703f3..f5b8e611 100644
--- a/src/app/[locale]/roof/page.jsx
+++ b/src/app/[locale]/roof/page.jsx
@@ -1,7 +1,10 @@
import Hero from '@/components/Hero'
import Roof from '@/components/Roof'
+import { initCheck } from '@/util/session-util'
+
+export default async function RoofPage() {
+ await initCheck()
-export default function RoofPage() {
return (
<>
diff --git a/src/app/[locale]/roof2/page.jsx b/src/app/[locale]/roof2/page.jsx
index 6e9df6bf..8d707367 100644
--- a/src/app/[locale]/roof2/page.jsx
+++ b/src/app/[locale]/roof2/page.jsx
@@ -1,17 +1,9 @@
-'use client'
-
import Roof2 from '@/components/Roof2'
-import { textState } from '@/store/canvasAtom'
-import { useEffect } from 'react'
-import { useRecoilState } from 'recoil'
import RoofSelect from '@/app/[locale]/roof2/RoofSelect'
+import { initCheck } from '@/util/session-util'
-export default function Roof2Page() {
- const [text, setText] = useRecoilState(textState)
-
- useEffect(() => {
- console.log(text)
- }, [])
+export default async function Roof2Page() {
+ await initCheck()
return (
<>
diff --git a/src/components/Roof2.jsx b/src/components/Roof2.jsx
index 2ad0f8c8..102a7bea 100644
--- a/src/components/Roof2.jsx
+++ b/src/components/Roof2.jsx
@@ -1,3 +1,5 @@
+'use client'
+
import { useCanvas } from '@/hooks/useCanvas'
import { useEffect, useState, useRef } from 'react'
import { Mode, useMode } from '@/hooks/useMode'
diff --git a/src/components/common/grid/QGrid.jsx b/src/components/common/grid/QGrid.jsx
index 2611f078..99c3fd62 100644
--- a/src/components/common/grid/QGrid.jsx
+++ b/src/components/common/grid/QGrid.jsx
@@ -7,7 +7,6 @@ import 'ag-grid-community/styles/ag-grid.css'
import 'ag-grid-community/styles/ag-theme-quartz.css'
export default function QGrid(props) {
- console.log('QGrid props:', props)
const { gridData, gridColumns, isPageable = true } = props
const [count, setCount] = useState(0)
const [clickedCount, setClickedCount] = useState(0)
diff --git a/src/lib/authActions.js b/src/lib/authActions.js
index e1968efe..1ca7bd31 100644
--- a/src/lib/authActions.js
+++ b/src/lib/authActions.js
@@ -20,7 +20,8 @@ export async function getSession() {
console.log('session:', session)
if (!session.isLoggedIn) {
- session.isLoggedIn = defaultSession.isLoggedIn
+ // session.isLoggedIn = defaultSession.isLoggedIn
+ session.isLoggedIn = false
}
return session
@@ -35,24 +36,20 @@ export async function login(formData) {
console.log('id:', userId)
console.log('password:', password)
- // const user = {
- // id: 1,
- // name: 'jinsoo Kim',
- // email: 'jinsoo.kim@example.com',
- // }
- const loginUser = await getUserByIdAndPassword({ userId, password })
- console.log('loginUser:', loginUser)
+ // const loginUser = await getUserByIdAndPassword({ userId, password })
+ const loginUser = {
+ id: 1,
+ userId: 'test123',
+ name: 'jinsoo Kim',
+ email: 'jinsoo.kim@example.com',
+ }
if (!loginUser) {
throw Error('Wrong Credentials!')
}
- // session.id = user.id
- // session.email = user.email
- session.userId = loginUser.USER_ID
- session.saleStoreId = loginUser.SALE_STORE_ID
- session.name = loginUser.NAME
- session.mail = loginUser.MAIL
+ session.name = loginUser.USER_ID
+ session.email = loginUser.SALE_STORE_ID
session.isLoggedIn = true
console.log('session:', session)
diff --git a/src/lib/session.js b/src/lib/session.js
index 95d51411..ff5a2078 100644
--- a/src/lib/session.js
+++ b/src/lib/session.js
@@ -1,10 +1,4 @@
-export const defaultSession = {
- userId: null,
- saleStoreId: null,
- name: null,
- mail: null,
- isLoggedIn: false,
-}
+export const defaultSession = {}
export const sessionOptions = {
password: process.env.SESSION_SECRET,
diff --git a/src/lib/user.js b/src/lib/user.js
index bdc619ee..d79e958a 100644
--- a/src/lib/user.js
+++ b/src/lib/user.js
@@ -1,5 +1,7 @@
'use server'
+import { getSession } from './authActions'
+
const { PrismaClient } = require('@prisma/client')
const prisma = new PrismaClient()
@@ -29,3 +31,11 @@ export async function getUsers() {
},
})
}
+
+export async function checkSession() {
+ const session = await getSession()
+
+ return {
+ session,
+ }
+}
diff --git a/src/util/context-util.js b/src/util/context-util.js
index 0d14f1d9..0179fdf0 100644
--- a/src/util/context-util.js
+++ b/src/util/context-util.js
@@ -30,7 +30,7 @@ const CanvasWithContextMenu = forwardRef(({ canvasProps }, ref) => {
document.addEventListener('click', handleOutsideClick)
return () => {
- canvasProps.upperCanvasEl.removeEventListener('contextmenu', handleContextMenu)
+ // canvasProps.upperCanvasEl.removeEventListener('contextmenu', handleContextMenu)
document.removeEventListener('click', handleClick)
document.removeEventListener('click', handleOutsideClick)
}
diff --git a/src/util/session-util.js b/src/util/session-util.js
new file mode 100644
index 00000000..ab8b120c
--- /dev/null
+++ b/src/util/session-util.js
@@ -0,0 +1,10 @@
+import { checkSession } from '@/lib/user'
+import { redirect } from 'next/navigation'
+
+export const initCheck = async () => {
+ const { session } = await checkSession()
+
+ if (!session.isLoggedIn) {
+ redirect('/login')
+ }
+}