diff --git a/src/app/(main)/layout.tsx b/src/app/(main)/layout.tsx index 6e658cc..438a6b9 100644 --- a/src/app/(main)/layout.tsx +++ b/src/app/(main)/layout.tsx @@ -22,7 +22,6 @@ export default async function MainLayout({ return ( <> - + {children} diff --git a/src/components/AutoLogoutProvider/AutoLogoutProvider.tsx b/src/components/AutoLogoutProvider/AutoLogoutProvider.tsx index 73b5684..e82244f 100644 --- a/src/components/AutoLogoutProvider/AutoLogoutProvider.tsx +++ b/src/components/AutoLogoutProvider/AutoLogoutProvider.tsx @@ -2,6 +2,7 @@ import React, { createContext, useState, useEffect, ReactNode } from 'react'; import { useIdleTimer } from "react-idle-timer"; import { signOut } from "next-auth/react"; +import { useTranslation } from 'react-i18next'; interface TimerContextProps { lastRequestTime: number; @@ -16,6 +17,7 @@ interface AutoLogoutProviderProps { } const AutoLogoutProvider: React.FC = ({ children, isUserLoggedIn }) => { + const { t } = useTranslation("common") const [lastRequestTime, setLastRequestTime] = useState(Date.now()); const [logoutInterval, setLogoutInterval] = useState(1); // minute const [state, setState] = useState('Active'); @@ -65,6 +67,7 @@ const AutoLogoutProvider: React.FC = ({ children, isUse if (state !== "Active" && lastActiveTab) { const timeElapsed = currentTime - lastRequestTime; if (timeElapsed >= logoutInterval * 60 * 1000) { + alert(t("Your session has expired, please log in again.")) // console.log(timeElapsed / 1000); // console.log(logoutInterval* 60); // console.log(logoutInterval * 60 * 1000 - timeElapsed) diff --git a/src/components/ProgressByTeamSearch/ProgressByTeamSearchWrapper.tsx b/src/components/ProgressByTeamSearch/ProgressByTeamSearchWrapper.tsx index 33a1e38..e2a61c7 100644 --- a/src/components/ProgressByTeamSearch/ProgressByTeamSearchWrapper.tsx +++ b/src/components/ProgressByTeamSearch/ProgressByTeamSearchWrapper.tsx @@ -10,7 +10,9 @@ interface SubComponents { const ProgressByTeamSearchWrapper: React.FC & SubComponents = async () => { const teamprojects = await fetchTeamProjects(); - return ; + const _teamprojects = teamprojects.length > 1 ? [{id: 0, teamId: 0, teamLeadId: 0, teamCode: "All", teamName: "", projectNo: teamprojects.reduce((acc, cur) => acc + cur.projectNo, 0)}, ...teamprojects] : teamprojects + + return ; }; ProgressByTeamSearchWrapper.Loading = ProgressByTeamSearchLoading; diff --git a/src/i18n/en/common.json b/src/i18n/en/common.json index 6af5bce..c82cd5d 100644 --- a/src/i18n/en/common.json +++ b/src/i18n/en/common.json @@ -6,6 +6,8 @@ "All": "All", + "Your session has expired, please log in again.": "Your session has expired, please log in again.", + "Petty Cash": "Petty Cash", "Expense": "Expense", diff --git a/src/i18n/zh/common.json b/src/i18n/zh/common.json index 4070470..53774bf 100644 --- a/src/i18n/zh/common.json +++ b/src/i18n/zh/common.json @@ -1,6 +1,8 @@ { "All": "全部", + "Your session has expired, please log in again.": "登入驗證已過期, 請重新登入.", + "Petty Cash": "小額開支", "Expense": "普通開支",