From 89d4a36df08753f82b3422f5fd8269e058fdbf57 Mon Sep 17 00:00:00 2001 From: JM Kim <106949557+CSE-Shaco@users.noreply.github.com> Date: Sun, 14 Dec 2025 20:01:01 +0900 Subject: [PATCH] fix(homecoming): modify meta data --- .../homecoming/component/HomecomingPage.jsx | 274 +++++++++++++++++ src/app/homecoming/page.jsx | 277 +----------------- 2 files changed, 278 insertions(+), 273 deletions(-) create mode 100644 src/app/homecoming/component/HomecomingPage.jsx diff --git a/src/app/homecoming/component/HomecomingPage.jsx b/src/app/homecoming/component/HomecomingPage.jsx new file mode 100644 index 0000000..7738f80 --- /dev/null +++ b/src/app/homecoming/component/HomecomingPage.jsx @@ -0,0 +1,274 @@ +'use client'; + +import {useState} from 'react'; +import {GoogleMap, Marker, useJsApiLoader} from '@react-google-maps/api'; +import Image from 'next/image'; +import {useSearchParams} from "next/navigation"; + +export default function HomecomingPage() { + const [showInvitation, setShowInvitation] = useState(false); + + return (
+ {/* ๐Ÿ”ฅ ๋ชจ๋ฐ”์ผ/ํƒœ๋ธ”๋ฆฟ: ํ™”๋ฉด์— ๋”ฑ ๊ณ ์ •๋˜๋Š” ๋ฐฐ๊ฒฝ (fixed) */} +
+ + {/* ๐Ÿ’ป PC: ๋‚ด์šฉ ๋†’์ด๋งŒํผ ์•„๋ž˜๋กœ ๋Š˜์–ด๋‚˜๋Š” ๋ฐฐ๊ฒฝ */} +
+ + {/* 1920px ๊ธฐ์ค€ ์บ”๋ฒ„์Šค */} +
+ + {/* ์‹ค์ œ ์ฝ˜ํ…์ธ  */} +
+ {showInvitation ? ( setShowInvitation(false)}/>) : ( + setShowInvitation(true)}/>)} +
+
+
); +} + +/* =============================== + Hero ์ปดํฌ๋„ŒํŠธ +================================ */ +function Hero({onOpenInvitation}) { + const searchParams = useSearchParams(); + + // ์˜ˆ: /homecoming?from=GOAT+๋ฉค๋ฒ„ + const rawText = searchParams.get('from'); // ์—†์œผ๋ฉด null + const testText = rawText ? (decodeURIComponent(rawText) + " ") : ''; // ๊ธฐ๋ณธ๊ฐ’ ์ฒ˜๋ฆฌ + + return (
+ GDGoC INHA Homecoming Day Illustration + +

+ GDGoC INHA{" "} +
+ ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ๋ฐ์ด์— +
+ {testText && (<>{testText})} + ์—ฌ๋Ÿฌ๋ถ„์„ ์ดˆ๋Œ€ํ•ฉ๋‹ˆ๋‹ค! +

+ + +
); +} + +/* =============================== + Invitation ์ปดํฌ๋„ŒํŠธ +================================ */ +function Invitation({onBack}) { + return (
+ {/* ์ดˆ๋Œ€์žฅ ์นด๋“œ */} +
+ + {/* ์ƒ๋‹จ ๋ผ๋ฒจ + ๋’ค๋กœ๊ฐ€๊ธฐ */} +
+ + Invitation + + {onBack && ()} +
+ + {/* 1. ์†Œ๊ฐœ */} +
+

+ GDGoC INHA{" "} +
+ ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ ๋ฐ์ด +

+

+ GDGoC INHA Homecoming Day 2025 +

+ +
+ +

+ GDGoC INHA๊ฐ€ ์ฒ˜์Œ์œผ๋กœ ์„ ๋ณด์ด๋Š”{" "} + ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ ๋ฐ์ด(Homecoming Day)๊ฐ€ ์—ด๋ฆฝ๋‹ˆ๋‹ค! +

+ +

+ ์ด๋ฒˆ ํ–‰์‚ฌ๋Š” ํ˜„์—ญ ๋ถ€์›๊ณผ OB, ๊ทธ๋ฆฌ๊ณ  GDG ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๊ด€์‹ฌ ์žˆ๋Š” ๋ชจ๋“  ๋ถ„๋“ค์ด ํ•œ์ž๋ฆฌ์— ๋ชจ์—ฌ{" "} + + ํ”„๋กœ์ ํŠธ ์„ฑ๊ณผ ๊ณต์œ  ยท ๊ธฐ์ˆ  ๊ต๋ฅ˜ ยท ์ปค๋ฎค๋‹ˆํ‹ฐ ๋„คํŠธ์›Œํ‚น + + ์„ ํ•จ๊ป˜ ๋‚˜๋ˆ„๋Š” ๋œป๊นŠ์€ ์ž๋ฆฌ์ž…๋‹ˆ๋‹ค. +

+ + +

+ ํ•œ ํ•ด ๋™์•ˆ์˜ ํ™œ๋™์„ ๋Œ์•„๋ณด๊ณ , ์•ž์œผ๋กœ GDGoC INHA๊ฐ€ ๋งŒ๋“ค์–ด๊ฐˆ ๋ฐฉํ–ฅ์„ ํ•จ๊ป˜ ์ด์•ผ๊ธฐํ•˜๋ฉฐ{" "} + ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๊ฐ€์น˜๋ฅผ ๋”์šฑ ํ™•์žฅํ•˜๋Š” ์˜๋ฏธ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. +

+
+
+ + {/* 2~3. ์ผ์‹œ/์žฅ์†Œ + ํ”„๋กœ๊ทธ๋žจ (PC์—์„œ 2์—ด ๋ฐฐ์น˜) */} +
+ {/* ์™ผ์ชฝ ์ปฌ๋Ÿผ: ์ผ์‹œ + ์žฅ์†Œ */} +
+ {/* ์ผ์‹œ */} +
+

+ ์ผ์‹œ +

+

+ 2025๋…„ 12์›” 20์ผ (ํ† ) +

+
+ + {/* ์žฅ์†Œ */} +
+

+ ์žฅ์†Œ +

+

+ ์‹ ํ•œ ์Šคํ€˜์–ด ๋ธŒ๋ฆฟ์ง€ ์ธ์ฒœ +
+ (์ธ์ฒœ ์—ฐ์ˆ˜๊ตฌ ์ปจ๋ฒค์‹œ์•„๋Œ€๋กœ 204 ์ธ์Šคํƒ€2) +

+
+ +
+

+ ์ฐธ๊ฐ€ ์‹ ์ฒญ +

+ + + ์‹ ์ฒญ ๋งํฌ ๋ฐ”๋กœ ๊ฐ€๊ธฐ + โ†’ + +
+
+ + {/* ์˜ค๋ฅธ์ชฝ ์ปฌ๋Ÿผ: ํ”„๋กœ๊ทธ๋žจ ์•ˆ๋‚ด */} +
+

+ ํ”„๋กœ๊ทธ๋žจ ์•ˆ๋‚ด +

+
+
+

+ 1๋ถ€(13:00~) GOAT Final Day +

+
    +
  • + ํŒ€ ํ”„๋กœ์ ํŠธ ๋ฐ๋ชจ ์‹œ์—ฐ ๋ฐ ํ”ผ์นญ ๋ฐœํ‘œ (๋ผ์šด๋“œ ํ˜•์‹) +
  • +
+
+ +
+

+ 2๋ถ€(16:00~) Networking Session +

+
    +
  • ์˜คํ”„๋‹ ํŠน๊ฐ• - GDGoC Korea Organizer ๊น€๋Œ€ํ˜„๋‹˜
  • +
  • GDGoC INHA ์—ฐ๊ฐ„ ํ™œ๋™ ์†Œ๊ฐœ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ •๋ฆฌ
  • +
  • OB ๋ฐ ์ดˆ์ฒญ ์—ฐ์‚ฌ ์†Œ๊ฐœ
  • +
  • ํŒ€ ๊ธฐ๋ฐ˜ ๋„คํŠธ์›Œํ‚น ๊ฒŒ์ž„ ์ง„ํ–‰
  • +
  • ์ž์œ ๋กœ์šด ๋„คํŠธ์›Œํ‚น
  • +
+
+ +
+

+ ๋’ทํ’€์ด (19:00~) +

+
+
+
+
+ + {/* 4. ์ง€๋„ (์ฐพ์•„์˜ค๋Š” ๊ธธ) */} +
+

+ ์ฐพ์•„์˜ค๋Š” ๊ธธ +

+ +
+
+
); +} + +function HomecomingMap() { + const {isLoaded, loadError} = useJsApiLoader({ + googleMapsApiKey: process.env.NEXT_PUBLIC_GOOGLE_MAPS_API_KEY, id: 'homecoming-map-script', + }); + + const center = {lat: 37.388493, lng: 126.639989}; + + if (loadError) { + return (
+ ์ง€๋„๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. +
); + } + + if (!isLoaded) { + return (
+ ์ง€๋„๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘์ž…๋‹ˆ๋‹ค... +
); + } + + return (
+ + + +
); +} diff --git a/src/app/homecoming/page.jsx b/src/app/homecoming/page.jsx index 7738f80..b6141b3 100644 --- a/src/app/homecoming/page.jsx +++ b/src/app/homecoming/page.jsx @@ -1,274 +1,5 @@ -'use client'; +import HomecomingPage from './component/HomecomingPage'; -import {useState} from 'react'; -import {GoogleMap, Marker, useJsApiLoader} from '@react-google-maps/api'; -import Image from 'next/image'; -import {useSearchParams} from "next/navigation"; - -export default function HomecomingPage() { - const [showInvitation, setShowInvitation] = useState(false); - - return (
- {/* ๐Ÿ”ฅ ๋ชจ๋ฐ”์ผ/ํƒœ๋ธ”๋ฆฟ: ํ™”๋ฉด์— ๋”ฑ ๊ณ ์ •๋˜๋Š” ๋ฐฐ๊ฒฝ (fixed) */} -
- - {/* ๐Ÿ’ป PC: ๋‚ด์šฉ ๋†’์ด๋งŒํผ ์•„๋ž˜๋กœ ๋Š˜์–ด๋‚˜๋Š” ๋ฐฐ๊ฒฝ */} -
- - {/* 1920px ๊ธฐ์ค€ ์บ”๋ฒ„์Šค */} -
- - {/* ์‹ค์ œ ์ฝ˜ํ…์ธ  */} -
- {showInvitation ? ( setShowInvitation(false)}/>) : ( - setShowInvitation(true)}/>)} -
-
-
); -} - -/* =============================== - Hero ์ปดํฌ๋„ŒํŠธ -================================ */ -function Hero({onOpenInvitation}) { - const searchParams = useSearchParams(); - - // ์˜ˆ: /homecoming?from=GOAT+๋ฉค๋ฒ„ - const rawText = searchParams.get('from'); // ์—†์œผ๋ฉด null - const testText = rawText ? (decodeURIComponent(rawText) + " ") : ''; // ๊ธฐ๋ณธ๊ฐ’ ์ฒ˜๋ฆฌ - - return (
- GDGoC INHA Homecoming Day Illustration - -

- GDGoC INHA{" "} -
- ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ๋ฐ์ด์— -
- {testText && (<>{testText})} - ์—ฌ๋Ÿฌ๋ถ„์„ ์ดˆ๋Œ€ํ•ฉ๋‹ˆ๋‹ค! -

- - -
); -} - -/* =============================== - Invitation ์ปดํฌ๋„ŒํŠธ -================================ */ -function Invitation({onBack}) { - return (
- {/* ์ดˆ๋Œ€์žฅ ์นด๋“œ */} -
- - {/* ์ƒ๋‹จ ๋ผ๋ฒจ + ๋’ค๋กœ๊ฐ€๊ธฐ */} -
- - Invitation - - {onBack && ()} -
- - {/* 1. ์†Œ๊ฐœ */} -
-

- GDGoC INHA{" "} -
- ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ ๋ฐ์ด -

-

- GDGoC INHA Homecoming Day 2025 -

- -
- -

- GDGoC INHA๊ฐ€ ์ฒ˜์Œ์œผ๋กœ ์„ ๋ณด์ด๋Š”{" "} - ์ œ1ํšŒ ํ™ˆ์ปค๋ฐ ๋ฐ์ด(Homecoming Day)๊ฐ€ ์—ด๋ฆฝ๋‹ˆ๋‹ค! -

- -

- ์ด๋ฒˆ ํ–‰์‚ฌ๋Š” ํ˜„์—ญ ๋ถ€์›๊ณผ OB, ๊ทธ๋ฆฌ๊ณ  GDG ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๊ด€์‹ฌ ์žˆ๋Š” ๋ชจ๋“  ๋ถ„๋“ค์ด ํ•œ์ž๋ฆฌ์— ๋ชจ์—ฌ{" "} - - ํ”„๋กœ์ ํŠธ ์„ฑ๊ณผ ๊ณต์œ  ยท ๊ธฐ์ˆ  ๊ต๋ฅ˜ ยท ์ปค๋ฎค๋‹ˆํ‹ฐ ๋„คํŠธ์›Œํ‚น - - ์„ ํ•จ๊ป˜ ๋‚˜๋ˆ„๋Š” ๋œป๊นŠ์€ ์ž๋ฆฌ์ž…๋‹ˆ๋‹ค. -

- - -

- ํ•œ ํ•ด ๋™์•ˆ์˜ ํ™œ๋™์„ ๋Œ์•„๋ณด๊ณ , ์•ž์œผ๋กœ GDGoC INHA๊ฐ€ ๋งŒ๋“ค์–ด๊ฐˆ ๋ฐฉํ–ฅ์„ ํ•จ๊ป˜ ์ด์•ผ๊ธฐํ•˜๋ฉฐ{" "} - ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๊ฐ€์น˜๋ฅผ ๋”์šฑ ํ™•์žฅํ•˜๋Š” ์˜๋ฏธ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. -

-
-
- - {/* 2~3. ์ผ์‹œ/์žฅ์†Œ + ํ”„๋กœ๊ทธ๋žจ (PC์—์„œ 2์—ด ๋ฐฐ์น˜) */} -
- {/* ์™ผ์ชฝ ์ปฌ๋Ÿผ: ์ผ์‹œ + ์žฅ์†Œ */} -
- {/* ์ผ์‹œ */} -
-

- ์ผ์‹œ -

-

- 2025๋…„ 12์›” 20์ผ (ํ† ) -

-
- - {/* ์žฅ์†Œ */} -
-

- ์žฅ์†Œ -

-

- ์‹ ํ•œ ์Šคํ€˜์–ด ๋ธŒ๋ฆฟ์ง€ ์ธ์ฒœ -
- (์ธ์ฒœ ์—ฐ์ˆ˜๊ตฌ ์ปจ๋ฒค์‹œ์•„๋Œ€๋กœ 204 ์ธ์Šคํƒ€2) -

-
- -
-

- ์ฐธ๊ฐ€ ์‹ ์ฒญ -

- - - ์‹ ์ฒญ ๋งํฌ ๋ฐ”๋กœ ๊ฐ€๊ธฐ - โ†’ - -
-
- - {/* ์˜ค๋ฅธ์ชฝ ์ปฌ๋Ÿผ: ํ”„๋กœ๊ทธ๋žจ ์•ˆ๋‚ด */} -
-

- ํ”„๋กœ๊ทธ๋žจ ์•ˆ๋‚ด -

-
-
-

- 1๋ถ€(13:00~) GOAT Final Day -

-
    -
  • - ํŒ€ ํ”„๋กœ์ ํŠธ ๋ฐ๋ชจ ์‹œ์—ฐ ๋ฐ ํ”ผ์นญ ๋ฐœํ‘œ (๋ผ์šด๋“œ ํ˜•์‹) -
  • -
-
- -
-

- 2๋ถ€(16:00~) Networking Session -

-
    -
  • ์˜คํ”„๋‹ ํŠน๊ฐ• - GDGoC Korea Organizer ๊น€๋Œ€ํ˜„๋‹˜
  • -
  • GDGoC INHA ์—ฐ๊ฐ„ ํ™œ๋™ ์†Œ๊ฐœ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ •๋ฆฌ
  • -
  • OB ๋ฐ ์ดˆ์ฒญ ์—ฐ์‚ฌ ์†Œ๊ฐœ
  • -
  • ํŒ€ ๊ธฐ๋ฐ˜ ๋„คํŠธ์›Œํ‚น ๊ฒŒ์ž„ ์ง„ํ–‰
  • -
  • ์ž์œ ๋กœ์šด ๋„คํŠธ์›Œํ‚น
  • -
-
- -
-

- ๋’ทํ’€์ด (19:00~) -

-
-
-
-
- - {/* 4. ์ง€๋„ (์ฐพ์•„์˜ค๋Š” ๊ธธ) */} -
-

- ์ฐพ์•„์˜ค๋Š” ๊ธธ -

- -
-
-
); -} - -function HomecomingMap() { - const {isLoaded, loadError} = useJsApiLoader({ - googleMapsApiKey: process.env.NEXT_PUBLIC_GOOGLE_MAPS_API_KEY, id: 'homecoming-map-script', - }); - - const center = {lat: 37.388493, lng: 126.639989}; - - if (loadError) { - return (
- ์ง€๋„๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. -
); - } - - if (!isLoaded) { - return (
- ์ง€๋„๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘์ž…๋‹ˆ๋‹ค... -
); - } - - return (
- - - -
); -} +export default function Page() { + return ; +} \ No newline at end of file