[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: dashboard.php
<?php require_once '../config/database.php'; requireRole('teacher'); $teacher_id = getUserId(); // Get teacher's assignments $assignments = $pdo->prepare(" SELECT ta.*, g.name as grade_name, s.name as subject_name, st.name as stage_name FROM teacher_assignments ta JOIN grades g ON ta.grade_id = g.id JOIN subjects s ON ta.subject_id = s.id JOIN stages st ON g.stage_id = st.id WHERE ta.teacher_id = ? ORDER BY st.name, g.name, s.name "); $assignments->execute([$teacher_id]); $teacher_assignments = $assignments->fetchAll(); // Get teacher's competitions $competitions = $pdo->prepare(" SELECT c.*, g.name as grade_name, s.name as subject_name, st.name as stage_name FROM competitions c JOIN grades g ON c.grade_id = g.id JOIN subjects s ON c.subject_id = s.id JOIN stages st ON g.stage_id = st.id WHERE c.teacher_id = ? ORDER BY c.created_at DESC LIMIT 10 "); $competitions->execute([$teacher_id]); $teacher_competitions = $competitions->fetchAll(); // Get statistics $stats = []; $stats['assignments'] = count($teacher_assignments); $stats['competitions'] = $pdo->prepare("SELECT COUNT(*) FROM competitions WHERE teacher_id = ?"); $stats['competitions']->execute([$teacher_id]); $stats['competitions'] = $stats['competitions']->fetchColumn(); $stats['active_competitions'] = $pdo->prepare("SELECT COUNT(*) FROM competitions WHERE teacher_id = ? AND status = 'active'"); $stats['active_competitions']->execute([$teacher_id]); $stats['active_competitions'] = $stats['active_competitions']->fetchColumn(); $stats['students'] = $pdo->prepare("SELECT COUNT(*) FROM student_lists WHERE teacher_id = ?"); $stats['students']->execute([$teacher_id]); $stats['students'] = $stats['students']->fetchColumn(); ?> <!DOCTYPE html> <html lang="ar" dir="rtl"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>لوحة المعلم - منصة المسابقات التعليمية</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet"> <link href="../assets/css/style.css" rel="stylesheet"> </head> <body> <!-- Navigation --> <nav class="navbar navbar-expand-lg navbar-dark bg-success"> <div class="container-fluid"> <a class="navbar-brand" href="../index.php"> <i class="fas fa-trophy me-2"></i> منصة المسابقات التعليمية </a> <div class="navbar-nav me-auto"> <span class="navbar-text"> <i class="fas fa-chalkboard-teacher me-1"></i> مرحباً، <?= sanitize($_SESSION['user_name']) ?> </span> </div> <div class="navbar-nav"> <a class="nav-link" href="../auth/logout.php"> <i class="fas fa-sign-out-alt me-1"></i> تسجيل الخروج </a> </div> </div> </nav> <div class="container-fluid"> <div class="row"> <!-- Sidebar --> <div class="col-md-3 col-lg-2 bg-light sidebar py-4"> <ul class="nav nav-pills flex-column"> <li class="nav-item"> <a class="nav-link active" href="dashboard.php"> <i class="fas fa-tachometer-alt me-2"></i> الرئيسية </a> </li> <li class="nav-item"> <a class="nav-link" href="manage_students.php"> <i class="fas fa-users me-2"></i> إدارة الطلاب </a> </li> <li class="nav-item"> <a class="nav-link" href="create_competition.php"> <i class="fas fa-plus-circle me-2"></i> إنشاء مسابقة </a> </li> <li class="nav-item"> <a class="nav-link" href="my_competitions.php"> <i class="fas fa-trophy me-2"></i> مسابقاتي </a> </li> <li class="nav-item"> <a class="nav-link" href="results.php"> <i class="fas fa-chart-bar me-2"></i> النتائج </a> </li> </ul> </div> <!-- Main Content --> <div class="col-md-9 col-lg-10 py-4"> <div class="d-flex justify-content-between align-items-center mb-4"> <h1 class="h3">لوحة المعلم</h1> <div class="btn-group"> <a href="create_competition.php" class="btn btn-success"> <i class="fas fa-plus me-1"></i> إنشاء مسابقة جديدة </a> <a href="../index.php" class="btn btn-outline-primary"> <i class="fas fa-home me-1"></i> الموقع الرئيسي </a> </div> </div> <!-- Statistics Cards --> <div class="row mb-4"> <div class="col-lg-3 col-md-6 mb-3"> <div class="card bg-primary text-white"> <div class="card-body"> <div class="d-flex justify-content-between"> <div> <h4><?= $stats['assignments'] ?></h4> <p class="mb-0">المواد المكلف بها</p> </div> <div class="align-self-center"> <i class="fas fa-book fa-2x"></i> </div> </div> </div> </div> </div> <div class="col-lg-3 col-md-6 mb-3"> <div class="card bg-success text-white"> <div class="card-body"> <div class="d-flex justify-content-between"> <div> <h4><?= $stats['students'] ?></h4> <p class="mb-0">الطلاب</p> </div> <div class="align-self-center"> <i class="fas fa-users fa-2x"></i> </div> </div> </div> </div> </div> <div class="col-lg-3 col-md-6 mb-3"> <div class="card bg-info text-white"> <div class="card-body"> <div class="d-flex justify-content-between"> <div> <h4><?= $stats['competitions'] ?></h4> <p class="mb-0">إجمالي المسابقات</p> </div> <div class="align-self-center"> <i class="fas fa-trophy fa-2x"></i> </div> </div> </div> </div> </div> <div class="col-lg-3 col-md-6 mb-3"> <div class="card bg-warning text-white"> <div class="card-body"> <div class="d-flex justify-content-between"> <div> <h4><?= $stats['active_competitions'] ?></h4> <p class="mb-0">المسابقات النشطة</p> </div> <div class="align-self-center"> <i class="fas fa-play fa-2x"></i> </div> </div> </div> </div> </div> </div> <div class="row"> <!-- Teacher Assignments --> <div class="col-lg-6 mb-4"> <div class="card h-100"> <div class="card-header"> <h5 class="mb-0"> <i class="fas fa-chalkboard me-2"></i> المواد المكلف بتدريسها </h5> </div> <div class="card-body"> <?php if (empty($teacher_assignments)): ?> <div class="alert alert-info"> <i class="fas fa-info-circle me-2"></i> لم يتم تكليفك بأي مواد بعد. يرجى التواصل مع الإدارة. </div> <?php else: ?> <div class="list-group list-group-flush"> <?php foreach ($teacher_assignments as $assignment): ?> <div class="list-group-item d-flex justify-content-between align-items-center"> <div> <h6 class="mb-1"><?= sanitize($assignment['subject_name']) ?></h6> <small class="text-muted"> <?= sanitize($assignment['stage_name']) ?> - <?= sanitize($assignment['grade_name']) ?> </small> </div> <span class="badge bg-primary rounded-pill"> <i class="fas fa-book"></i> </span> </div> <?php endforeach; ?> </div> <?php endif; ?> </div> </div> </div> <!-- Recent Competitions --> <div class="col-lg-6 mb-4"> <div class="card h-100"> <div class="card-header"> <h5 class="mb-0"> <i class="fas fa-trophy me-2"></i> المسابقات الحديثة </h5> </div> <div class="card-body"> <?php if (empty($teacher_competitions)): ?> <div class="alert alert-info"> <i class="fas fa-info-circle me-2"></i> لم تقم بإنشاء أي مسابقات بعد </div> <a href="create_competition.php" class="btn btn-success"> <i class="fas fa-plus me-1"></i> إنشاء مسابقة جديدة </a> <?php else: ?> <div class="list-group list-group-flush"> <?php foreach (array_slice($teacher_competitions, 0, 5) as $comp): ?> <div class="list-group-item"> <div class="d-flex justify-content-between align-items-start"> <div> <h6 class="mb-1"><?= sanitize($comp['title']) ?></h6> <small class="text-muted"> <?= sanitize($comp['subject_name']) ?> - <?= sanitize($comp['grade_name']) ?> </small> </div> <div> <span class="badge bg-<?= $comp['competition_type'] == 'group' ? 'primary' : 'success' ?> mb-1"> <?= $comp['competition_type'] == 'group' ? 'مجموعات' : 'مليونير' ?> </span> <br> <span class="badge bg-<?= $comp['status'] == 'active' ? 'success' : ($comp['status'] == 'draft' ? 'warning' : 'secondary') ?>"> <?= $comp['status'] == 'active' ? 'نشطة' : ($comp['status'] == 'draft' ? 'مسودة' : 'مكتملة') ?> </span> </div> </div> </div> <?php endforeach; ?> </div> <div class="mt-3"> <a href="my_competitions.php" class="btn btn-outline-primary"> <i class="fas fa-list me-1"></i> عرض جميع المسابقات </a> </div> <?php endif; ?> </div> </div> </div> </div> <!-- Quick Actions --> <div class="card"> <div class="card-header"> <h5 class="mb-0"> <i class="fas fa-bolt me-2"></i> إجراءات سريعة </h5> </div> <div class="card-body"> <div class="row"> <div class="col-md-3 mb-3"> <a href="create_competition.php" class="btn btn-success w-100 h-100 d-flex flex-column align-items-center justify-content-center py-4"> <i class="fas fa-plus-circle fa-2x mb-2"></i> <span>إنشاء مسابقة جديدة</span> </a> </div> <div class="col-md-3 mb-3"> <a href="manage_students.php" class="btn btn-primary w-100 h-100 d-flex flex-column align-items-center justify-content-center py-4"> <i class="fas fa-users fa-2x mb-2"></i> <span>إدارة الطلاب</span> </a> </div> <div class="col-md-3 mb-3"> <a href="my_competitions.php" class="btn btn-info w-100 h-100 d-flex flex-column align-items-center justify-content-center py-4"> <i class="fas fa-trophy fa-2x mb-2"></i> <span>مسابقاتي</span> </a> </div> <div class="col-md-3 mb-3"> <a href="results.php" class="btn btn-warning w-100 h-100 d-flex flex-column align-items-center justify-content-center py-4"> <i class="fas fa-chart-bar fa-2x mb-2"></i> <span>النتائج والإحصائيات</span> </a> </div> </div> </div> </div> </div> </div> </div> <script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script> <script src="../assets/js/main.js"></script> </body> </html>
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: premium320.web-hosting.com
Server IP: 66.29.153.54
PHP Version: 8.2.29
Server Software: LiteSpeed
System: Linux premium320.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
HDD Total: 97.87 GB
HDD Free: 76.86 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
No
git:
Yes
User Info
Username: aoneqssk
User ID (UID): 1285
Group ID (GID): 1290
Script Owner UID: 1285
Current Dir Owner: 1285