diff --git a/src/app/teacher-dashboard/page.tsx b/src/app/teacher-dashboard/page.tsx index e7e7c24..c93bd1d 100644 --- a/src/app/teacher-dashboard/page.tsx +++ b/src/app/teacher-dashboard/page.tsx @@ -2,48 +2,85 @@ import { useState } from "react"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; -import { LineChart, Line, BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from "recharts"; +import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen"; +import MetricCardThree from "@/components/sections/metrics/MetricCardThree"; +import { + Home, + Calendar, + Users, + MessageSquare, + DollarSign, + BarChart3, + Settings, + TrendingUp, + Award, + Star, + Clock, + CheckCircle, + Clock3, + Send, +} from "lucide-react"; -const TeacherDashboard = () => { - const [comments, setComments] = useState>([]); - const [newComment, setNewComment] = useState(""); - const [newCommentName, setNewCommentName] = useState(""); +export default function TeacherDashboard() { + const [activeMenu, setActiveMenu] = useState("home"); - // Monthly earning data - const earningData = [ - { month: "Ocak", earning: 2400 }, - { month: "Şubat", earning: 3200 }, - { month: "Mart", earning: 2800 }, - { month: "Nisan", earning: 3900 }, - { month: "Mayıs", earning: 4200 }, - { month: "Haziran", earning: 3800 }, + const navItems = [ + { name: "Ana Sayfa", id: "/" }, + { name: "Öğretmen Paneli", id: "/teacher-dashboard" }, ]; - // Student count data - const studentData = [ - { month: "Ocak", students: 15 }, - { month: "Şubat", students: 22 }, - { month: "Mart", students: 28 }, - { month: "Nisan", students: 35 }, - { month: "Mayıs", students: 42 }, - { month: "Haziran", students: 45 }, + const menuItems = [ + { id: "home", label: "Ana Sayfa", icon: Home }, + { id: "calendar", label: "Takvim", icon: Calendar }, + { id: "students", label: "Öğrencilerim", icon: Users }, + { id: "messages", label: "Mesajlar", icon: MessageSquare }, + { id: "earnings", label: "Kazançlar", icon: DollarSign }, + { id: "statistics", label: "İstatistikler", icon: BarChart3 }, + { id: "settings", label: "Ayarlar", icon: Settings }, ]; - const handleAddComment = () => { - if (newComment.trim() && newCommentName.trim()) { - setComments([ - ...comments, - { - id: Date.now().toString(), - name: newCommentName, - text: newComment, - date: new Date().toLocaleDateString("tr-TR"), - }, - ]); - setNewComment(""); - setNewCommentName(""); - } - }; + const todayLessons = [ + { + id: "1", title: "Matematik - Cebir Temelleri", student: "Ahmet Demir", time: "09:00 - 10:00", status: "scheduled"}, + { + id: "2", title: "İngilizce - Konuşma Pratiği", student: "Zeynep Kaya", time: "11:00 - 12:00", status: "scheduled"}, + { + id: "3", title: "Fizik - Hareket Kanunları", student: "Mehmet Yılmaz", time: "14:00 - 15:00", status: "in-progress"}, + ]; + + const pendingRequests = [ + { + id: "1", student: "Ali Şahin", subject: "Kimya", date: "5 Şubat 2025", time: "15:00"}, + { + id: "2", student: "Emine Çetin", subject: "Tarih", date: "6 Şubat 2025", time: "16:30"}, + ]; + + const newMessages = [ + { + id: "1", from: "Ahmet Demir", message: "Ders için teşekkürler, çok faydalı oldu!", time: "5 dakika önce"}, + { + id: "2", from: "Zeynep Kaya", message: "Sonraki ders için kaynak önerebilir misiniz?", time: "2 saat önce"}, + { + id: "3", from: "Mehmet Yılmaz", message: "Pazartesi dersini erteleyebilir miyim?", time: "4 saat önce"}, + ]; + + const monthlyEarnings = [ + { month: "Ocak", amount: 2400 }, + { month: "Şubat", amount: 2800 }, + { month: "Mart", amount: 2200 }, + { month: "Nisan", amount: 3000 }, + { month: "Mayıs", amount: 2600 }, + { month: "Haziran", amount: 3200 }, + ]; + + const studentCount = [ + { month: "Ocak", count: 12 }, + { month: "Şubat", count: 15 }, + { month: "Mart", count: 18 }, + { month: "Nisan", count: 16 }, + { month: "Mayıs", count: 20 }, + { month: "Haziran", count: 22 }, + ]; return ( { secondaryButtonStyle="layered" headingFontWeight="light" > -
-
- {/* Header */} -
-

Öğretmen Kontrol Paneli

-

Aylık kazanç, öğrenci sayısı ve yorumları takip edin

-
+ - {/* Charts Grid */} -
- {/* Monthly Earning Chart */} -
-

Aylık Kazançlar

- - - - - - `₺${value}`} - /> - - - - -
- - {/* Student Count Chart */} -
-

Öğrenci Sayısı Artışı

- - - - - - `${value} öğrenci`} - /> - - - - -
-
- - {/* Comments Section */} -
-

Öğrenci Yorumları

- - {/* Add Comment Form */} -
-

Yeni Yorum Ekle

-
- setNewCommentName(e.target.value)} - className="w-full px-4 py-2 border border-slate-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 text-slate-900 placeholder-slate-500" - /> -