{days.map((day, idx) => {
@@ -106,8 +179,9 @@ export function ScheduleCalendar({ lessons, hallCount = 1 }: { lessons: Lesson[]
textAlign: 'center',
fontSize: '0.6rem',
color: '#666',
- borderRight: '1px solid #222',
- padding: '2px 0'
+ borderRight: hIdx === hallCount - 1 ? '1px solid #333' : '1px solid #222',
+ padding: '4px 0',
+ backgroundColor: '#050505'
}}>
S{hIdx + 1}
@@ -118,9 +192,7 @@ export function ScheduleCalendar({ lessons, hallCount = 1 }: { lessons: Lesson[]
)}
- {/* Time Axis */}
{hours.map(h => (
@@ -129,9 +201,7 @@ export function ScheduleCalendar({ lessons, hallCount = 1 }: { lessons: Lesson[]
))}
- {/* Main Content Area */}
- {/* Now Line */}
@@ -142,6 +212,30 @@ export function ScheduleCalendar({ lessons, hallCount = 1 }: { lessons: Lesson[]
const hNum = hIdx + 1;
return (
1 ? '1px solid #111' : 'none' }}>
+ {/* Hoverable Slots */}
+ {hours.map(h => (
+
handleSlotClick(dIdx, h, hNum)}
+ style={{ height: '60px', position: 'relative', cursor: 'pointer' }}
+ className="slot-hover"
+ >
+
+
+
+ ))}
+
{groupedLessons[dIdx]?.[hNum]?.map(lesson => (
{lesson.startTimeStr}
{lesson.class?.name || lesson.name}
@@ -170,6 +264,117 @@ export function ScheduleCalendar({ lessons, hallCount = 1 }: { lessons: Lesson[]
+
+ {/* Reservation Modal */}
+ {isModalOpen && (
+
+ )}
+
+
);
}
diff --git a/src/presentation/components/Sidebar.tsx b/src/presentation/components/Sidebar.tsx
index 4039087..ed42027 100644
--- a/src/presentation/components/Sidebar.tsx
+++ b/src/presentation/components/Sidebar.tsx
@@ -8,12 +8,11 @@ export function Sidebar() {
const router = useRouter();
const navItems = [
+ { name: 'Takvime Git 🗓️', href: '/' },
{ name: 'Dashboard', href: '/admin/dashboard' },
{ name: 'Şubeler', href: '/admin/branches' },
{ name: 'Hocalar', href: '/admin/instructors' },
{ name: 'Sınıflar', href: '/admin/classes' },
- { name: 'Ders Programı', href: '/admin/lessons' },
- { name: 'Ücretler', href: '/admin/fees' },
{ name: 'Kayıt', href: '/admin/register' },
];