From f97bd83a152d448b97ea2ff7982f15a88d51e3d8 Mon Sep 17 00:00:00 2001
From: pjookim <pjookim@naver.com>
Date: Sat, 7 Dec 2024 20:57:17 +0900
Subject: [PATCH] feat: add additional information for festivals in AddPlace
 component

---
 src/components/AddPlace.js | 17 ++++++++++-------
 src/styles/AddPlace.css    | 31 +++++++++++++++++++++++++++++++
 2 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/src/components/AddPlace.js b/src/components/AddPlace.js
index a603e7b..f7fac8b 100644
--- a/src/components/AddPlace.js
+++ b/src/components/AddPlace.js
@@ -1,6 +1,6 @@
 import React, { useState, useEffect, useRef, useCallback, useMemo } from 'react';
 import '../styles/AddPlace.css';
-import { FaStar, FaPlus, FaCalendarAlt, FaUser, FaTicketAlt } from 'react-icons/fa';
+import { FaPhoneAlt, FaStar, FaPlus, FaCalendarAlt, FaUser, FaTicketAlt } from 'react-icons/fa';
 import axios from 'axios';
 import { toast } from 'react-toastify';
 import { AREA_CODE } from '../constants/areaCode';
@@ -87,7 +87,7 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
     console.log('로딩 상태:', currentState.loading);
     console.log('더 불러올 데이터 여부:', currentState.hasMore);
     console.log('현재 탭:', activeTab);
-    console.log('현재 탭의 데이터 ���수:', currentState.places.length);
+    console.log('현재 탭의 데이터 개수:', currentState.places.length);
   }, [tabStates, activeTab]);
 
   useEffect(() => {
@@ -316,7 +316,7 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
     
     const areaCode = getAreaCode(location);
     if (!areaCode) {
-      toast.error('올바른 지�� 정보가 아닙니다.');
+      toast.error('올바른 지역 정보가 아닙니다.');
       return;
     }
 
@@ -405,6 +405,7 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
               if (festivalEnd >= formattedTripStartDate && festivalStart <= formattedTripEndDate) {
                 console.log(festivalInfo.sponsor1);
                 console.log(festivalInfo.usetimefestival);
+                console.log(festivalInfo);
                 return {
                   ...item,
                   eventStartDate: festivalStart,
@@ -435,7 +436,9 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
           tel: item.tel,
           dist: item.dist,
           eventStartDate: item.eventStartDate,
-          eventEndDate: item.eventEndDate
+          eventEndDate: item.eventEndDate,
+          sponsor: item.sponsor,
+          usetimefestival: item.usetimefestival
         }));
 
         updateTabState('festivals', {
@@ -577,7 +580,7 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
             <div className="place-info">
               <h3>{place.name}</h3>
               <p className="location">{place.location}</p>
-              {place.tel && <p className="tel">{place.tel}</p>}
+              {place.tel && <p className="tel"><FaPhoneAlt className="tel-icon" />{place.tel}</p>}
               {activeTab === 'festivals' && (
                 <>
                   {place.eventStartDate && place.eventEndDate && (
@@ -589,13 +592,13 @@ const AddPlace = ({ tripId, day, onBack, onPlaceSelect, tripStartDate, tripEndDa
                   {place.sponsor && (
                     <p className="festival-sponsor">
                       <FaUser className="sponsor-icon" />
-                      주최: {place.sponsor}
+                      {place.sponsor}
                     </p>
                   )}
                   {place.usetimefestival && (
                     <p className="festival-fee">
                       <FaTicketAlt className="fee-icon" />
-                      요금: {place.usetimefestival}
+                      <span dangerouslySetInnerHTML={{ __html: place.usetimefestival }} />
                     </p>
                   )}
                 </>
diff --git a/src/styles/AddPlace.css b/src/styles/AddPlace.css
index 228c587..d7cbca7 100644
--- a/src/styles/AddPlace.css
+++ b/src/styles/AddPlace.css
@@ -187,4 +187,35 @@
 
 .add-button:hover {
   color: var(--primary-color-dark);
+}
+
+.place-info .location {
+  margin-bottom: 10px;
+}
+
+.place-info p {
+  display: flex;
+  align-items: center;
+  gap: 8px;
+  margin: 6px 0;
+  line-height: 1.25;
+}
+
+.place-info .tel-icon,
+.place-info .calendar-icon,
+.place-info .sponsor-icon,
+.place-info .fee-icon {
+  min-width: 16px;
+  color: var(--primary-color);
+}
+
+.place-info h3 {
+  margin-bottom: 8px;
+}
+
+.festival-period,
+.festival-sponsor,
+.festival-fee {
+  font-size: 0.9rem;
+  color: #555;
 }
\ No newline at end of file
-- 
GitLab