Browse Source

fix : 주소 변경 (서구 -> 서해구)

main
이시연 2 weeks ago
parent
commit
5ea0414f83
  1. 12
      src/components/Footer.jsx
  2. 104
      src/pages/company/LocationPage.jsx

12
src/components/Footer.jsx

@ -93,12 +93,13 @@ const INFO_TEXT = {
ko: { ko: {
ceo: "대표. 최현식", ceo: "대표. 최현식",
bizNo: "사업자등록번호. 393-81-00110", bizNo: "사업자등록번호. 393-81-00110",
address: "인천광역시 서구 로봇랜드로 155-11 로봇랜드 14층 1401~2호", address: "인천광역시 서구 로봇랜드로 155-11 로봇랜드 14층 1401~2호",
}, },
en: { en: {
ceo: "CEO. Choi Hyun-sik", ceo: "CEO. Choi Hyun-sik",
bizNo: "Biz. Reg. No. 393-81-00110", bizNo: "Biz. Reg. No. 393-81-00110",
address: "14F, 1401-2, 155-11 Robot Land-ro, Seo-gu, Incheon, Republic of Korea", address:
"14F, 1401-2, 155-11 Robot Land-ro, Seo-gu, Incheon, Republic of Korea",
}, },
}; };
@ -155,14 +156,17 @@ function Footer() {
</span> </span>
<span className="sep">|</span> <span className="sep">|</span>
<span className="info-item"> <span className="info-item">
<span className="strong">E-mail.</span> <a href="mailto:help@palnet.co.kr">help@palnet.co.kr</a> <span className="strong">E-mail.</span>{" "}
<a href="mailto:help@palnet.co.kr">help@palnet.co.kr</a>
</span> </span>
</p> </p>
</div> </div>
</div> </div>
<div className="footer-bot"> <div className="footer-bot">
<p className="footer-copy">Copyright © () PALNETWORKS. All rights reserved.</p> <p className="footer-copy">
Copyright © () PALNETWORKS. All rights reserved.
</p>
<ul className="footer-policy"> <ul className="footer-policy">
<li> <li>
<a href="#none">Privacy Policy</a> <a href="#none">Privacy Policy</a>

104
src/pages/company/LocationPage.jsx

@ -24,7 +24,7 @@ const COMPANY_NAV_EN = [
const INFO_KO = [ const INFO_KO = [
{ {
label: "주소", label: "주소",
value: "인천광역시 서구 로봇랜드로 155-11\n로봇랜드 14층 1401~2호", value: "인천광역시 서구 로봇랜드로 155-11\n로봇랜드 14층 1401~2호",
}, },
{ label: "전화", value: "032-727-5909", href: "tel:032-727-5909" }, { label: "전화", value: "032-727-5909", href: "tel:032-727-5909" },
{ label: "팩스", value: "032-727-5908" }, { label: "팩스", value: "032-727-5908" },
@ -65,7 +65,8 @@ const INFO_MAGOK_KO = [
const INFO_MAGOK_EN = [ const INFO_MAGOK_EN = [
{ {
label: "Address", label: "Address",
value: "Seoul Magok District Centennia Building\n219 Gonghangdae-ro, Gangseo-gu, Seoul", value:
"Seoul Magok District Centennia Building\n219 Gonghangdae-ro, Gangseo-gu, Seoul",
}, },
{ label: "Phone", value: "032-727-5909", href: "tel:032-727-5909" }, { label: "Phone", value: "032-727-5909", href: "tel:032-727-5909" },
{ {
@ -247,12 +248,15 @@ const TRANSPORT_MAGOK_EN = [
}, },
]; ];
const MAP_INCHEON = "https://www.google.com/maps/embed?pb=!1m16!1m12!1m3!1d3164.5077769134846!2d126.60837056230932!3d37.51952592193411!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1z7J247LKcIOuhnOu0h-uenOuTnA!5e0!3m2!1sko!2skr!4v1779870074094!5m2!1sko!2skr"; const MAP_INCHEON =
const MAP_MAGOK = "https://www.google.com/maps/embed?pb=!1m16!1m12!1m3!1d3162.80690228454!2d126.82939801231092!3d37.559612971923826!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1z7IS87YWM64uI7JWE!5e0!3m2!1sko!2skr!4v1779871233362!5m2!1sko!2skr"; "https://www.google.com/maps/embed?pb=!1m16!1m12!1m3!1d3164.5077769134846!2d126.60837056230932!3d37.51952592193411!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1z7J247LKcIOuhnOu0h-uenOuTnA!5e0!3m2!1sko!2skr!4v1779870074094!5m2!1sko!2skr";
const MAP_MAGOK =
"https://www.google.com/maps/embed?pb=!1m16!1m12!1m3!1d3162.80690228454!2d126.82939801231092!3d37.559612971923826!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1z7IS87YWM64uI7JWE!5e0!3m2!1sko!2skr!4v1779871233362!5m2!1sko!2skr";
const PAGE_TEXT = { const PAGE_TEXT = {
ko: { ko: {
heroSub: "고객 여러분의 방문을 위해 팔네트웍스의 위치 정보를 안내해드립니다.", heroSub:
"고객 여러분의 방문을 위해 팔네트웍스의 위치 정보를 안내해드립니다.",
tabIncheon: "인천 본사", tabIncheon: "인천 본사",
tabMagok: "마곡 지점", tabMagok: "마곡 지점",
companyInfoLabel: "회사 정보", companyInfoLabel: "회사 정보",
@ -278,7 +282,9 @@ const PAGE_TEXT = {
<> <>
Weekdays 09:00 18:00 Weekdays 09:00 18:00
<br /> <br />
<span className="location-hours-text">Closed on weekends & holidays</span> <span className="location-hours-text">
Closed on weekends & holidays
</span>
</> </>
), ),
inquiryBtn: "Inquiry", inquiryBtn: "Inquiry",
@ -292,8 +298,10 @@ export default function LocationPage() {
const COMPANY_NAV = lang === "en" ? COMPANY_NAV_EN : COMPANY_NAV_KO; const COMPANY_NAV = lang === "en" ? COMPANY_NAV_EN : COMPANY_NAV_KO;
const INFO = lang === "en" ? INFO_EN : INFO_KO; const INFO = lang === "en" ? INFO_EN : INFO_KO;
const INFO_MAGOK = lang === "en" ? INFO_MAGOK_EN : INFO_MAGOK_KO; const INFO_MAGOK = lang === "en" ? INFO_MAGOK_EN : INFO_MAGOK_KO;
const TRANSPORT_INCHEON = lang === "en" ? TRANSPORT_INCHEON_EN : TRANSPORT_INCHEON_KO; const TRANSPORT_INCHEON =
const TRANSPORT_MAGOK = lang === "en" ? TRANSPORT_MAGOK_EN : TRANSPORT_MAGOK_KO; lang === "en" ? TRANSPORT_INCHEON_EN : TRANSPORT_INCHEON_KO;
const TRANSPORT_MAGOK =
lang === "en" ? TRANSPORT_MAGOK_EN : TRANSPORT_MAGOK_KO;
const t = PAGE_TEXT[lang]; const t = PAGE_TEXT[lang];
const ref = useFadeIn(); const ref = useFadeIn();
@ -318,7 +326,13 @@ export default function LocationPage() {
<div className="sub-content"> <div className="sub-content">
<div className="inner-wrap"> <div className="inner-wrap">
<motion.div className="ht-header" initial={{ opacity: 0, y: 32 }} whileInView={{ opacity: 1, y: 0 }} viewport={{ once: true, margin: "-80px" }} transition={{ duration: 0.6, ease: [0.4, 0, 0.2, 1] }}> <motion.div
className="ht-header"
initial={{ opacity: 0, y: 32 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true, margin: "-80px" }}
transition={{ duration: 0.6, ease: [0.4, 0, 0.2, 1] }}
>
<p className="ht-header-title"> <p className="ht-header-title">
Find Us, Find Us,
<br /> <br />
@ -330,10 +344,16 @@ export default function LocationPage() {
</motion.div> </motion.div>
<div className="location-tabs"> <div className="location-tabs">
<button className={`location-tab ${isIncheon ? "active" : ""}`} onClick={() => setTab("incheon")}> <button
className={`location-tab ${isIncheon ? "active" : ""}`}
onClick={() => setTab("incheon")}
>
{t.tabIncheon} {t.tabIncheon}
</button> </button>
<button className={`location-tab ${!isIncheon ? "active" : ""}`} onClick={() => setTab("magok")}> <button
className={`location-tab ${!isIncheon ? "active" : ""}`}
onClick={() => setTab("magok")}
>
{t.tabMagok} {t.tabMagok}
</button> </button>
</div> </div>
@ -341,9 +361,21 @@ export default function LocationPage() {
<section className="sub-section"> <section className="sub-section">
<div className="location-wrap"> <div className="location-wrap">
{/* 지도 */} {/* 지도 */}
<motion.div className="location-map-wrap" key={tab + "-map"} initial={{ opacity: 0, y: 24 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.4, ease: [0.4, 0, 0.2, 1] }}> <motion.div
className="location-map-wrap"
key={tab + "-map"}
initial={{ opacity: 0, y: 24 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.4, ease: [0.4, 0, 0.2, 1] }}
>
<div className="location-map"> <div className="location-map">
<iframe src={currentMap} allowFullScreen loading="lazy" referrerPolicy="no-referrer-when-downgrade" title={t.mapTitle} /> <iframe
src={currentMap}
allowFullScreen
loading="lazy"
referrerPolicy="no-referrer-when-downgrade"
title={t.mapTitle}
/>
</div> </div>
</motion.div> </motion.div>
@ -359,7 +391,9 @@ export default function LocationPage() {
delay: 0.15, delay: 0.15,
}} }}
> >
<p className="location-info-section-title">{t.companyInfoLabel}</p> <p className="location-info-section-title">
{t.companyInfoLabel}
</p>
<motion.div <motion.div
key={tab + "-info"} key={tab + "-info"}
className="location-info-card" className="location-info-card"
@ -375,13 +409,18 @@ export default function LocationPage() {
<ul className="location-info-list"> <ul className="location-info-list">
{currentInfo.map((item) => ( {currentInfo.map((item) => (
<li key={item.label} className="location-info-item"> <li key={item.label} className="location-info-item">
<span className="location-info-label">{item.label}</span> <span className="location-info-label">
{item.label}
</span>
{item.href ? ( {item.href ? (
<a className="location-info-value" href={item.href}> <a className="location-info-value" href={item.href}>
{item.value} {item.value}
</a> </a>
) : ( ) : (
<p className="location-info-value" style={{ margin: 0, whiteSpace: "pre-line" }}> <p
className="location-info-value"
style={{ margin: 0, whiteSpace: "pre-line" }}
>
{item.value} {item.value}
</p> </p>
)} )}
@ -392,16 +431,31 @@ export default function LocationPage() {
<p className="location-hours-eyebrow">{t.hoursLabel}</p> <p className="location-hours-eyebrow">{t.hoursLabel}</p>
<p className="location-hours-label">{t.hoursText}</p> <p className="location-hours-label">{t.hoursText}</p>
</div> </div>
<Link to={withLang("/contact/inquiry")} className="location-inquiry-btn" onMouseEnter={(e) => (e.currentTarget.style.opacity = ".85")} onMouseLeave={(e) => (e.currentTarget.style.opacity = "1")}> <Link
to={withLang("/contact/inquiry")}
className="location-inquiry-btn"
onMouseEnter={(e) =>
(e.currentTarget.style.opacity = ".85")
}
onMouseLeave={(e) => (e.currentTarget.style.opacity = "1")}
>
{t.inquiryBtn} {t.inquiryBtn}
</Link> </Link>
</motion.div> </motion.div>
</motion.div> </motion.div>
{/* 교통편 */} {/* 교통편 */}
<motion.div className="location-transport-wrap" key={tab + "-transport"} initial={{ opacity: 0, y: 24 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.4, ease: [0.4, 0, 0.2, 1] }}> <motion.div
className="location-transport-wrap"
key={tab + "-transport"}
initial={{ opacity: 0, y: 24 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.4, ease: [0.4, 0, 0.2, 1] }}
>
<div className="location-transport"> <div className="location-transport">
<h3 className="location-transport-title">{t.transportTitle}</h3> <h3 className="location-transport-title">
{t.transportTitle}
</h3>
<div className="location-transport-list"> <div className="location-transport-list">
{currentTransport.map((item, i) => ( {currentTransport.map((item, i) => (
<motion.div <motion.div
@ -420,13 +474,19 @@ export default function LocationPage() {
<div className="location-transport-icon"> <div className="location-transport-icon">
<img src={item.icon} alt={item.badge} /> <img src={item.icon} alt={item.badge} />
</div> </div>
<span className="location-transport-badge">{item.badge}</span> <span className="location-transport-badge">
{item.badge}
</span>
</div> </div>
<div className="location-transport-routes"> <div className="location-transport-routes">
{item.items.map((route, j) => ( {item.items.map((route, j) => (
<div key={j} className="location-transport-route"> <div key={j} className="location-transport-route">
<p className="location-transport-route-title">{route.title}</p> <p className="location-transport-route-title">
<p className="location-transport-route-desc">{route.desc}</p> {route.title}
</p>
<p className="location-transport-route-desc">
{route.desc}
</p>
</div> </div>
))} ))}
</div> </div>

Loading…
Cancel
Save