Skip to content

Commit 39c7c24

Browse files
authored
Merge pull request #322 from checkmo2025/fix-319
[Fix] ToDoList 내용 참고
2 parents 4032d6b + 420115c commit 39c7c24

9 files changed

Lines changed: 139 additions & 95 deletions

File tree

src/components/Search/BookSearch.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ export default function BookSearch({
9090
>
9191
{Searchbooks.map((SearchBook) => (
9292
<div key={SearchBook.isbn}>
93-
<div className = "flex h-[215px] border-2 border-[var(--sub-color-2-brown,#EAE5E2)] rounded-2xl bg-[var(--White,#FFF)] shadow-sm hover:shadow-lg hover:scale-[1.03]">
93+
<div className = "min-w-[300px] flex h-[215px] border-2 border-[var(--sub-color-2-brown,#EAE5E2)] rounded-2xl bg-[var(--White,#FFF)] shadow-sm ransition-transform duration-300 hover:shadow-lg hover:scale-[1.03]">
9494
{/* 좌측 */}
9595
<div className="flex-1 flex p-[10px] gap-[20px]">
9696
{/* 썸네일 */}

src/components/Search/SearchedBookModal.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,7 @@ export default function SearchedBookModal({ isOpen, onClose, searchBook}: Props)
7373
<button
7474
className="rounded-lg px-4 py-2 bg-[var(--button-brown,#A6917E)] text-white hover:brightness-90"
7575
onClick={() => {
76-
77-
navigate(`/bookstory/${searchBook.isbn}/write`);
76+
navigate(`/bookstory/${searchBook.isbn}/write`, { state: { book: searchBook } });
7877
onClose();
7978
}}
8079
>

src/components/Shelf/ReviewSection.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import LongtermChatInput from '../LongtermChatInput';
1616
import { getStarIcon } from './getStarIcon';
1717
import StarSelector from '../BookRecommend/StarSelector';
1818
import Modal, { type ModalButton } from '../Modal';
19+
import { useNavigate } from 'react-router-dom';
1920

2021
export default function ReviewSection({
2122
meetingId,
@@ -26,6 +27,7 @@ export default function ReviewSection({
2627
currentUser: { nickname: string; profileImageUrl: string };
2728
size: number;
2829
}) {
30+
const navigate = useNavigate();
2931
const [newRating, setNewRating] = useState<number>(0);
3032
const [editRating, setEditRating] = useState<number>(0);
3133
const [ReviewList, setReviewList] = useState<ReviewItem[]>([]);
@@ -144,7 +146,7 @@ export default function ReviewSection({
144146
</span>
145147

146148
{/* 등록 영역 */}
147-
<div className="flex py-2 shadow rounded-2xl border-2 border-[var(--sub-color-2-brown,#EAE5E2)] w-full mb-3 hover:shadow-md">
149+
<div className="flex py-2 shadow rounded-2xl border-2 border-[var(--sub-color-2-brown,#EAE5E2)] w-full mb-3 transition-transform duration-300 hover:shadow-md">
148150
<div className="flex items-center justify-between h-[48px] w-[270px] flex-none ml-[12px] mr-[34px]">
149151
<img
150152
src={currentUser.profileImageUrl}
@@ -173,7 +175,9 @@ export default function ReviewSection({
173175
key={review.bookReviewId}
174176
className="flex py-2 shadow rounded-2xl border-2 border-[var(--sub-color-2-brown,#EAE5E2)] hover:shadow-md"
175177
>
176-
<div className="flex items-center justify-between h-[48px] w-[270px] flex-none ml-[12px] mr-[34px]">
178+
<div className="flex items-center justify-between h-[48px] w-[270px] flex-none ml-[12px] mr-[34px] cursor-pointer" onClick={() => {
179+
navigate(`/info/others/${review.authorInfo.nickname}`)
180+
}}>
177181
<img
178182
src={
179183
review.authorInfo.profileImageUrl ||

src/pages/Admin/MemberAdminPage.tsx

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ const MemberAdminPage = () => {
5050
]);
5151
setInfoOpen(true);
5252
} else if (nextStatus == 'MEMBER') {
53-
setInfoTitle("가입을 승인하시겠습니까?");
53+
setInfoTitle("정말로 이 회원의 운영진 역할을 해제하시겠습니까?");
5454
setInfoButtons([
5555
{ label: "확인", onClick: () => {mutate({ memberId, status: nextStatus }); setInfoOpen(false);}},
5656
{ label: "취소", onClick: () => setInfoOpen(false) , variant: "outline" },
@@ -87,7 +87,9 @@ const MemberAdminPage = () => {
8787
className="flex items-center justify-between pb-4"
8888
>
8989
{/* 유저 정보 */}
90-
<div className="flex items-center">
90+
<div className="flex items-center cursor-pointer" onClick={() => {
91+
navigate(`/info/others/${member.basicInfo.nickname}`)
92+
}}>
9193
<img src = {member.basicInfo.profileImageUrl || "/public/assets/ix_user-profile-filled.svg"} alt="profile" className="w-12 h-12 rounded-full mr-4" />
9294
<span className="font-['Pretendard'] text-[18px] font-semibold leading-[135%] text-gray-800">
9395
{member.basicInfo.nickname}
@@ -96,26 +98,28 @@ const MemberAdminPage = () => {
9698

9799
{/* 버튼들 */}
98100
<div>
99-
{member.clubMemberStatus !== 'STAFF' &&
101+
{(member.clubMemberStatus !== 'STAFF' &&
100102
<div className="flex gap-2">
101-
<button className="px-4 py-1.5 rounded-full text-sm bg-[#EFF5ED] text-[#367216] border border-[#90D26D] hover:bg-[#90D26D] hover:text-white "
102-
onClick={() => handleMemberStatus(member.clubMemberId, 'STAFF')}>
103-
운영진 역할 부여
104-
</button>
105-
106-
<button className="w-[90px] px-4 py-1.5 rounded-full text-sm bg-[#EFF5ED] text-[#367216] border border-[#90D26D] hover:bg-[#90D26D] hover:text-white "
103+
104+
<button className="w-[90px] px-4 py-1.5 rounded-full text-sm border border-[#90D26D] bg-[#EFF5ED] text-[#367216] hover:bg-[#90D26D] hover:text-white "
107105
onClick={() => handleMemberStatus(member.clubMemberId, 'BLOCKED')}>
108106
삭제하기
109107
</button>
108+
109+
<button className="px-4 py-1.5 rounded-full text-sm border border-[#90D26D] bg-[#EFF5ED] text-[#367216] hover:bg-[#90D26D] hover:text-white cursor-pointer"
110+
onClick={() => handleMemberStatus(member.clubMemberId, 'STAFF')}>
111+
운영진 승격
112+
</button>
110113
</div>
111-
}
112-
{member.clubMemberStatus == 'STAFF' &&
114+
)}
115+
{member.clubMemberStatus == 'STAFF' && member.basicInfo.nickname !== localStorage.getItem('nickname') && (
113116
<div className="flex gap-2">
114-
<div className="flex items-center justify-center w-[90px] px-4 py-1.5 rounded-full text-sm border border-[#90D26D] bg-[#90D26D] text-white ">
115-
운영진
117+
<div className="px-4 py-1.5 rounded-full text-sm border border-[#f18282ff] bg-[#EFF5ED] text-[#f18282ff] hover:bg-[#f18282ff] hover:text-white cursor-pointer "
118+
onClick={() => handleMemberStatus(member.clubMemberId, 'MEMBER')}>
119+
운영진 해제
116120
</div>
117121
</div>
118-
}
122+
)}
119123
</div>
120124
</li>
121125
))}

src/pages/Admin/MemberBlockPage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ const MemberBlockPage = () => {
8787
{Member.map((member) => (
8888
<div key={member.clubMemberId} className="px-4 mb-10 ">
8989
<div className="flex justify-between mb-4">
90-
<div className="flex items-center">
90+
<div className="flex items-center cursor-pointer" onClick={() => {navigate(`/info/others/${member.basicInfo.nickname}`)}}>
9191
<img src={member.basicInfo.profileImageUrl || "/public/assets/ix_user-profile-filled.svg"} alt="profile" className="w-12 h-12 rounded-full mr-4" />
9292
<div>
9393
<p className="text-lg font-semibold">{member.basicInfo.nickname}</p>

src/pages/Admin/RegisterAdminPage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ const RegisterAdminPage = () => {
8585
{Member.map((member) => (
8686
<div key={member.clubMemberId} className="px-4 mb-10 ">
8787
<div className="flex justify-between mb-4">
88-
<div className="flex items-center">
88+
<div className="flex items-center cursor-pointer" onClick={() => {navigate(`/info/others/${member.basicInfo.nickname}`)}}>
8989
<img src={member.basicInfo.profileImageUrl || "/public/assets/ix_user-profile-filled.svg"} alt="profile" className="w-12 h-12 rounded-full mr-4" />
9090
<div>
9191
<p className="text-lg font-semibold">{member.basicInfo.nickname}</p>

src/pages/BookClub/Shelf/ShelfDetailPage.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,10 @@ export default function ShelfDetailPage() {
8080
{/* 발제 리스트 */}
8181
<div className="flex flex-col gap-3 ">
8282
{topics!.map((topic : TopicItem) => (
83-
<div key={topic.topicId} className="py-2 flex shadow rounded-2xl border-2 border-[var(--sub-color-2-brown,#EAE5E2)] hover:shadow-md">
84-
<div className= "flex h-[48px] ml-[12px] gap-[19px] items-center w-[222px] flex-shrink-0" >
83+
<div key={topic.topicId} className="py-2 flex shadow rounded-2xl border-2 border-[var(--sub-color-2-brown,#EAE5E2)] ransition-transform duration-300 hover:shadow-md">
84+
<div className= "flex h-[48px] ml-[12px] gap-[19px] items-center w-[222px] flex-shrink-0 cursor-pointer"onClick={() => {
85+
navigate(`/info/others/${topic.authorInfo.nickname}`)
86+
}} >
8587
<img src= {topic.authorInfo.profileImageUrl || '/assets/ix_user-profile-filled.svg'} className="w-[48px] h-[48px] rounded-full object-cover" />
8688
<div className="font-semibold text-[15px] text-gray-800">{topic.authorInfo.nickname}</div>
8789
</div>

0 commit comments

Comments
 (0)