From ea93c38794297c85a9bfff8d5ea60d62569679c1 Mon Sep 17 00:00:00 2001 From: "Kalle (Sendou)" <38327916+Sendouc@users.noreply.github.com> Date: Wed, 4 Aug 2021 22:00:12 +0300 Subject: [PATCH] Remove /play pages --- pages/play/index.tsx | 182 ------------------------------------------- pages/play/join.tsx | 49 ------------ 2 files changed, 231 deletions(-) delete mode 100644 pages/play/index.tsx delete mode 100644 pages/play/join.tsx diff --git a/pages/play/index.tsx b/pages/play/index.tsx deleted file mode 100644 index 4b85fc77f..000000000 --- a/pages/play/index.tsx +++ /dev/null @@ -1,182 +0,0 @@ -import { Tab, TabList, TabPanel, TabPanels, Tabs } from "@chakra-ui/react"; -import ActiveMatchesTab from "components/play/ActiveMatchesTab"; -import FAQTab from "components/play/FAQTab"; -import RegisterTab from "components/play/RegisterTab"; -import { useRouter } from "next/router"; -import { useState } from "react"; - -const TAB_MAX_INDEX = 5; - -const PlayPage = () => { - const router = useRouter(); - const [tabIndex, setTabIndex] = useState(() => { - const tab = Number(router.query.tab); - - if (Number.isNaN(tab) || tab < 0 || tab > TAB_MAX_INDEX) { - return 0; - } - - return tab; - }); - - const handleTabIndexChange = (index: number) => { - router.replace(`?tab=${index}`, undefined, { shallow: true }); - setTabIndex(index); - }; - - return ( - <> - - - Register - - Active Matches - - Match History - Leaderboards - Stats - FAQ - - - - - - - - - -

three!

-
- -

four!

-
- -

Stats!

-
- - - -
-
- - ); -}; - -// export const getStaticProps: GetStaticProps = async () => { -// const [ladderDay, previousLadderDay] = await Promise.all([ -// playService.nextLadderDay(), -// playService.previousLadderDay(), -// ]); - -// let ladderDayAfterGeneration: NextLadderDay | undefined; -// if ( -// ladderDay && -// !ladderDay.matches.length && -// ladderDay.date.getTime() < new Date().getTime() -// ) { -// const teams = (await getAllLadderRegisteredTeamsForMatches()).filter( -// (team) => team.roster.length === 4 -// ); - -// if (teams.length < 4) { -// return { -// props: { -// ladderDay: JSON.parse(JSON.stringify(ladderDay)), -// previousLadderDay, -// }, -// revalidate: 30, -// }; // FIX -// } - -// const matches = getLadderRounds(teams); - -// const eighteenMaps = getMaplist(); - -// const dateWeekFromNow = new Date(ladderDay.date); -// dateWeekFromNow.setHours( -// ladderDay.date.getFullYear(), -// ladderDay.date.getMonth(), -// ladderDay.date.getDate() + 7 -// ); - -// const createMatches = matches.flatMap((round, i) => -// round.map((match) => -// prisma.ladderMatch.create({ -// data: { -// dayId: ladderDay.id, -// maplist: -// i === 0 ? eighteenMaps.slice(0, 9) : eighteenMaps.slice(9, 18), -// order: i + 1, -// players: { -// create: match.flatMap((team, teamI) => -// team.roster.map((user) => ({ -// userId: user.id, -// team: teamI === 0 ? "ALPHA" : "BRAVO", -// })) -// ), -// }, -// }, -// }) -// ) -// ); -// const createLadderDay = prisma.ladderDay.create({ -// data: { date: dateWeekFromNow }, -// }); -// const deleteLadderRegisteredTeams = prisma.ladderRegisteredTeam.deleteMany(); - -// await prisma.$transaction([ -// ...createMatches, -// createLadderDay, -// deleteLadderRegisteredTeams, -// ] as any); - -// ladderDayAfterGeneration = await playService.nextLadderDay(); -// } - -// return { -// props: { -// ladderDay: JSON.parse( -// JSON.stringify(ladderDayAfterGeneration ?? ladderDay) -// ), -// previousLadderDay, -// }, -// revalidate: 30, -// }; -// }; - -// function getMaplist() { -// const modes = shuffleArray(["SZ", "TC", "RM", "CB"]); -// const stages = shuffleArray([ -// "The Reef", -// "Musselforge Fitness", -// "Starfish Mainstage", -// "Humpback Pump Track", -// "Inkblot Art Academy", -// "Sturgeon Shipyard", -// "Manta Maria", -// "Snapper Canal", -// "Blackbelly Skatepark", -// "MakoMart", -// "Shellendorf Institute", -// "Goby Arena", -// "Piranha Pit", -// "Camp Triggerfish", -// "Wahoo World", -// "New Albacore Hotel", -// "Ancho-V Games", -// "Skipper Pavilion", -// //"Moray Towers", -// //"Port Mackerel", -// //"Walleye Warehouse", -// //"Arowana Mall", -// //"Kelp Dome" -// ]); - -// return stages.map((stage) => { -// const mode = modes.pop(); -// modes.unshift(mode!); -// return { stage, mode }; -// }); -// } - -export default PlayPage; diff --git a/pages/play/join.tsx b/pages/play/join.tsx deleted file mode 100644 index bd8d73189..000000000 --- a/pages/play/join.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import { t } from "@lingui/macro"; -import { useLingui } from "@lingui/react"; -import { useLadderTeams } from "hooks/play"; -import { useRouter } from "next/router"; -import { useEffect, useState } from "react"; -import { sendData } from "utils/postData"; - -const statusMessage = { - LOADING: t`Please wait...`, - ERROR: t`There is an error that needs to be fixed before you can join the team.`, - REDIRECTING: t`Joined the team. Redirecting.`, -} as const; - -const JoinLadderTeamPage = ({}) => { - const { i18n } = useLingui(); - const router = useRouter(); - const { mutate } = useLadderTeams(); - const [joiningStatus, setJoiningStatus] = useState< - "LOADING" | "ERROR" | "REDIRECTING" - >("LOADING"); - - useEffect(() => { - const joinTeam = async () => { - const { code } = router.query; - if (typeof code !== "string" || typeof name !== "string") { - router.push("/404"); - } - - const success = await sendData("POST", "/api/play/teams/join", { - code, - }); - if (!success) { - return setJoiningStatus("ERROR"); - } - - mutate(); - - setJoiningStatus("REDIRECTING"); - router.push(`/play`); - }; - - joinTeam(); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); - - return <>{i18n._(statusMessage[joiningStatus])}; -}; - -export default JoinLadderTeamPage;