Skip to content

Commit 172a969

Browse files
committed
feat: Footer 영문 번역 추가
1 parent 27028d9 commit 172a969

File tree

1 file changed

+55
-30
lines changed
  • apps/pyconkr/src/components/layout/Footer

1 file changed

+55
-30
lines changed

apps/pyconkr/src/components/layout/Footer/index.tsx

Lines changed: 55 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,14 @@ import * as React from "react";
66

77
import FlickrIcon from "@apps/pyconkr/assets/thirdparty/flickr.svg?react";
88

9-
interface LinkItem {
10-
text: string;
11-
href: string;
12-
}
9+
import { useAppContext } from "../../../contexts/app_context";
1310

1411
interface IconItem {
1512
icon: React.FC<{ width?: number; height?: number }>;
1613
alt: string;
1714
href: string;
1815
}
1916

20-
interface FooterProps {
21-
slogan?: string;
22-
links?: LinkItem[];
23-
icons?: IconItem[];
24-
}
25-
2617
const defaultIcons: IconItem[] = [
2718
{
2819
icon: Facebook,
@@ -56,43 +47,77 @@ const defaultIcons: IconItem[] = [
5647

5748
const Bar: React.FC = () => <div style={{ display: "inline-block", padding: "0 0.25rem" }}>|</div>;
5849

59-
export default function Footer({
60-
links = [
50+
export default function Footer() {
51+
const { sendEmail } = Common.Hooks.Common.useEmail();
52+
const { language } = useAppContext();
53+
54+
const corpPasamoStr = language === "ko" ? "사단법인 파이썬사용자모임" : "Python Korea";
55+
const corpAddressStr =
56+
language === "ko"
57+
? "서울특별시 강남구 강남대로84길 24-4"
58+
: "24-4, Gangnam-daero 84-gil, Gangnam-gu, Seoul, Republic of Korea";
59+
const corpRepresentatorStr = language === "ko" ? "대표자명 : 배권한" : "Representator : Kwon-Han Bae";
60+
const corpPhoneStr =
61+
language === "ko"
62+
? "대표 전화 번호 : 031-261-2203, 010-5298-6622, 010-8259-3013 (문자)"
63+
: "Phone Number : 031-261-2203, 010-5298-6622, 010-8259-3013 (SMS)";
64+
const corpCompanyNumberStr =
65+
language === "ko" ? "사업자 등록 번호 : 338-82-00046" : "Business Registration Number : 338-82-00046";
66+
const corpCheckBtnStr = language === "ko" ? "사업자 정보 확인" : "Check Business Registration Information";
67+
const corpMailOrderSalesRegistrationNumberStr =
68+
language === "ko"
69+
? "통신 판매 번호 : 2023-서울강남-03501"
70+
: "Mail Order Sales Registration Number : 2023-SEOUL-GANGNAM-03501";
71+
const hostingProviderStr =
72+
language === "ko"
73+
? "호스팅 제공자 : Amazon Web Services(Korea LLC)"
74+
: "Hosting Provider : Amazon Web Services(Korea LLC)";
75+
const contractEmailStr = language === "ko" ? "문의: " : "Contact: ";
76+
const copyrightStr =
77+
language === "ko"
78+
? "© 2025, 사단법인 파이썬사용자모임, All rights reserved."
79+
: "© 2025, Python Korea, All rights reserved.";
80+
81+
const links = [
6182
{
62-
text: "파이콘 한국 행동 강령(CoC)",
83+
text: language === "ko" ? "파이콘 한국 행동 강령(CoC)" : "PyCon Korea Code of Conduct",
6384
href: "https://pythonkr.github.io/pycon-code-of-conduct/ko/coc/a_intent_and_purpose.html",
6485
},
65-
{ text: "서비스 이용 약관", href: "/about/terms-of-service" },
66-
{ text: "개인 정보 처리 방침", href: "/about/privacy-policy" },
67-
],
68-
icons = defaultIcons,
69-
}: FooterProps) {
70-
const { sendEmail } = Common.Hooks.Common.useEmail();
86+
{
87+
text: language === "ko" ? "서비스 이용 약관" : "Terms of Service",
88+
href: "/about/terms-of-service",
89+
},
90+
{
91+
text: language === "ko" ? "개인 정보 처리 방침" : "Privacy Policy",
92+
href: "/about/privacy-policy",
93+
},
94+
];
7195

7296
return (
7397
<FooterContainer>
7498
<FooterContent>
7599
<FooterText>
76-
<strong>사단법인 파이썬사용자모임</strong>
100+
<strong>{corpPasamoStr}</strong>
77101
<br />
78-
서울특별시 강남구 강남대로84길 24-4
102+
{corpAddressStr}
79103
<Bar />
80-
대표자명 : 배권한
104+
{corpRepresentatorStr}
81105
<Bar />
82-
대표 전화 번호 : 031-261-2203, 010-5298-6622, 010-8259-3013 (문자)
106+
{corpPhoneStr}
83107
<Bar />
84-
사업자 등록 번호 : 338-82-00046
108+
{corpCompanyNumberStr}
85109
<a href="http://www.ftc.go.kr/bizCommPop.do?wrkr_no=3388200046" target="_blank" rel="noreferrer">
86110
<Button variant="outlined" startIcon={<OpenInNew sx={{ fontSize: "7pt" }} />}>
87-
사업자 정보 확인
111+
{corpCheckBtnStr}
88112
</Button>
89113
</a>
90114
<br />
91-
통신 판매 번호 : 2023-서울강남-03501
115+
{corpMailOrderSalesRegistrationNumberStr}
92116
<Bar />
93-
호스팅 제공자 : Amazon Web Services(Korea LLC)
117+
{hostingProviderStr}
94118
<Bar />
95-
문의: <a href="mailto:[email protected]">[email protected]</a>
119+
{contractEmailStr}
120+
96121
</FooterText>
97122
<FooterLinks>
98123
{links.map((link, index) => (
@@ -108,7 +133,7 @@ export default function Footer({
108133
<IconLink onClick={sendEmail} aria-label="이메일 보내기">
109134
<Email width={20} height={20} aria-hidden="true" />
110135
</IconLink>
111-
{icons.map((icon) => (
136+
{defaultIcons.map((icon) => (
112137
<IconLink
113138
key={icon.alt}
114139
href={icon.href}
@@ -120,7 +145,7 @@ export default function Footer({
120145
</IconLink>
121146
))}
122147
</FooterIcons>
123-
<FooterSlogan>© 2025, 파이콘 한국 준비위원회, All rights reserved.</FooterSlogan>
148+
<FooterSlogan>{copyrightStr}</FooterSlogan>
124149
</FooterContent>
125150
</FooterContainer>
126151
);

0 commit comments

Comments
 (0)