Skip to content

Commit e4d94ac

Browse files
authored
Merge pull request #105 from wafflestudio/main
dev <- prod hotfix 반영
2 parents 5194f0f + 5fd2d14 commit e4d94ac

5 files changed

Lines changed: 81 additions & 9 deletions

File tree

index.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@
55
<link rel="icon" type="image/svg+xml" href="/assets/logo.png" />
66
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
77
<title>행샤</title>
8+
<meta
9+
name="description"
10+
content="서울대학교 교내 행사를 한눈에 모아보는 캘린더 서비스"
11+
/>
12+
<meta property="og:title" content="행샤" />
13+
<meta property="og:description" content="..." />
14+
<meta property="og:url" content="https://hangsha.wafflestudio.com" />
15+
<meta
16+
name="google-site-verification"
17+
content="vN4BTCAW-_S7Oc3eqEP1cQgi3rDjRQmh6ZHSawwF9Ys"
18+
/>
819
</head>
920
<body>
1021
<div id="root"></div>

public/robots.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
User-agent: *
2+
Allow: /
3+
4+
Disallow: /auth/
5+
Disallow: /sync
6+
Disallow: /my
7+
Disallow: /bookmark
8+
Disallow: /memo
9+
10+
Sitemap: https://hangsha.wafflestudio.com/sitemap.xml

public/sitemap.xml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
3+
<url>
4+
<loc>https://hangsha.wafflestudio.com/</loc>
5+
<lastmod>2026-05-18</lastmod>
6+
<changefreq>weekly</changefreq>
7+
<priority>1.0</priority>
8+
</url>
9+
<url>
10+
<loc>https://hangsha.wafflestudio.com/main</loc>
11+
<lastmod>2026-05-18</lastmod>
12+
<changefreq>daily</changefreq>
13+
<priority>0.9</priority>
14+
</url>
15+
<url>
16+
<loc>https://hangsha.wafflestudio.com/main/day</loc>
17+
<lastmod>2026-05-18</lastmod>
18+
<changefreq>daily</changefreq>
19+
<priority>0.7</priority>
20+
</url>
21+
<url>
22+
<loc>https://hangsha.wafflestudio.com/search</loc>
23+
<lastmod>2026-05-18</lastmod>
24+
<changefreq>weekly</changefreq>
25+
<priority>0.6</priority>
26+
</url>
27+
</urlset>

src/pages/timetable/TimeTableSidebar.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ export const TimeTableSidebar = ({
4444
const handleTimetableClick = () => {
4545
navigate("/timetable");
4646
};
47+
48+
const handleBookmarkClick = () => {
49+
navigate("/bookmark");
50+
}
4751

4852
const startRename = (tt: Timetable) => {
4953
setNameChangeId(tt.id);
@@ -202,14 +206,18 @@ export const TimeTableSidebar = ({
202206
/>
203207
<span>캘린더로 돌아가기</span>
204208
</button>
205-
<div className={styles.pageLink}>
209+
<button
210+
type="button"
211+
className={styles.pageLink}
212+
onClick={() => handleBookmarkClick()}
213+
>
206214
<img
207215
className={styles.icon}
208216
src="/assets/bookmark.svg"
209217
alt="bookmark icon"
210218
/>
211219
<span>찜한 행사</span>
212-
</div>
220+
</button>
213221
<button
214222
type="button"
215223
className={styles.pageLink}

src/pages/timetable/TimetablePage.tsx

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,19 @@ export default function TimetablePage() {
6060
const [isAddClassPanelOpen, setIsAddClassPanelOpen] = useState(false);
6161
const [isSidebarOpen, setIsSidebarOpen] = useState(true);
6262
const [isTimetableSimplified, setIsTimetableSimplified] = useState(false);
63+
const [isLoginModalOpen, setIsLoginModalOpen] = useState(false);
64+
65+
const handleAddTimetable = async () => {
66+
if (!user) {
67+
setIsLoginModalOpen(true);
68+
return;
69+
}
70+
await createTimetable({
71+
year,
72+
semester,
73+
name: "새 시간표",
74+
});
75+
};
6376

6477
const { user } = useAuth();
6578
const navigate = useNavigate();
@@ -174,13 +187,7 @@ export default function TimetablePage() {
174187
>
175188
<TimeTableSidebar
176189
timetables={timetables}
177-
onAddTimetable={() =>
178-
createTimetable({
179-
year,
180-
semester,
181-
name: "새 시간표",
182-
})
183-
}
190+
onAddTimetable={handleAddTimetable}
184191
onSelectTimetable={selectTimetable}
185192
onRename={updateTimetableName}
186193
onDelete={deleteTimetable}
@@ -263,6 +270,15 @@ export default function TimetablePage() {
263270
</div>
264271
}
265272

273+
{isLoginModalOpen && (
274+
<Modal
275+
content={"시간표 추가를 위해서는\n로그인이 필요해요."}
276+
leftText="로그인 ·회원가입 페이지로 이동"
277+
onLeftClick={() => navigate("/")}
278+
onClose={() => setIsLoginModalOpen(false)}
279+
/>
280+
)}
281+
266282
<BottomNav />
267283
</div>
268284
);

0 commit comments

Comments
 (0)