From 12b0d96bd0630b806ac4db0a110ce19ca2fbf712 Mon Sep 17 00:00:00 2001 From: leehj050211 Date: Mon, 27 Mar 2023 23:06:53 +0900 Subject: [PATCH] =?UTF-8?q?FIX:=20=EB=A7=88=EC=9D=B4=EC=8A=A4=ED=84=B0=20?= =?UTF-8?q?=EB=9E=AD=ED=82=B9=20=EB=B9=84=EA=B3=B5=EA=B0=9C=20=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EB=88=84=EB=A5=B4=EA=B3=A0=20=EC=B7=A8=EC=86=8C=20?= =?UTF-8?q?=EC=8B=9C=20=EB=8B=A4=EB=A5=B8=20=ED=8E=98=EC=9D=B4=EC=A7=80?= =?UTF-8?q?=EB=A1=9C=20=EC=9D=B4=EB=8F=99=ED=95=98=EB=8A=94=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/common/sidebar/sidebar.tsx | 2 +- components/meister/rankingItem.tsx | 51 +++++++++++++++------------ 2 files changed, 29 insertions(+), 24 deletions(-) diff --git a/components/common/sidebar/sidebar.tsx b/components/common/sidebar/sidebar.tsx index 7119c91..029aa3d 100644 --- a/components/common/sidebar/sidebar.tsx +++ b/components/common/sidebar/sidebar.tsx @@ -107,7 +107,7 @@ const Sidebar = () => { window.location.href = 'https://github.com/BSSM-BSM'} + onClick={() => window.open('https://github.com/BSSM-BSM', '_blank')} > 깃허브 diff --git a/components/meister/rankingItem.tsx b/components/meister/rankingItem.tsx index b2fb0cb..fdc0f8b 100644 --- a/components/meister/rankingItem.tsx +++ b/components/meister/rankingItem.tsx @@ -1,4 +1,4 @@ -import Link from 'next/link'; +import { useRouter } from 'next/navigation'; import { useRecoilState } from 'recoil'; import { userState } from '../../store/account.store'; import styles from '../../styles/meister/ranking.module.css'; @@ -13,6 +13,7 @@ interface MeisterRankingItemProps { } export const MeisterRankingItem = ({ ranking, i, updatePrivateRanking }: MeisterRankingItemProps) => { + const router = useRouter(); const [user] = useRecoilState(userState); const { grade, classNo, studentNo, name } = ranking.student; @@ -41,30 +42,34 @@ export const MeisterRankingItem = ({ ranking, i, updatePrivateRanking }: Meister } } + const myRankingCheck = (): boolean => ( + user.isLogin && user.role === UserRole.STUDENT && + grade === user.student.grade && + classNo === user.student.classNo && + studentNo === user.student.studentNo + ); + + const viewMyMeisterInfo = () => router.push(`/meister?grade=${grade}&classNo=${classNo}&studentNo=${studentNo}`); + return ( -
  • - -
    {i + 1}
    -
    -
    - - {`${grade}${classNo}${String(studentNo).padStart(2, '0')}`} - - {name} - { - user.isLogin && user.role === UserRole.STUDENT && - grade === user.student.grade && - classNo === user.student.classNo && - studentNo === user.student.studentNo && - ranking.result !== MeisterResultType.LOGIN_ERROR && - updatePrivateRanking(true)}>비공개로 변경 - } -
    -
    - {scoreInfoView()} -
    +
  • !myRankingCheck() && viewMyMeisterInfo()}> +
    {i + 1}
    +
    +
    + + {`${grade}${classNo}${String(studentNo).padStart(2, '0')}`} + + {name} + { + myRankingCheck() && + ranking.result !== MeisterResultType.LOGIN_ERROR && + updatePrivateRanking(true)}>비공개로 변경 + } +
    +
    + {scoreInfoView()}
    - +
  • ) }; \ No newline at end of file