<?php
session_start();
if (!isset($_SESSION['admin_logged_in'])) { header('Location: ../index.php'); exit(); }
if (file_exists(__DIR__ . '/../../db.php')) {
    require_once __DIR__ . '/../../db.php';
} elseif (file_exists(__DIR__ . '/../db.php')) {
    require_once __DIR__ . '/../db.php';
}

if (file_exists(__DIR__ . '/../../result_db_setup.php')) {
    require_once __DIR__ . '/../../result_db_setup.php';
} elseif (file_exists(__DIR__ . '/../result_db_setup.php')) {
    require_once __DIR__ . '/../result_db_setup.php';
} elseif (file_exists(__DIR__ . '/result_db_setup.php')) {
    require_once __DIR__ . '/result_db_setup.php';
}
setupResultTables($conn);
$msg=''; $err='';

if ($_POST['action']??''=='add') {
    $sn=$conn->real_escape_string(trim($_POST['subject_name']));
    $sc=$conn->real_escape_string(trim($_POST['subject_code']));
    $gt=$conn->real_escape_string($_POST['grading_type']);
    $af=intval($_POST['applicable_from']); $at=intval($_POST['applicable_to']);
    $is=isset($_POST['is_scholastic'])?1:0;
    $conn->query("INSERT INTO result_subjects (subject_name,subject_code,grading_type,applicable_from,applicable_to,is_scholastic) VALUES ('$sn','$sc','$gt',$af,$at,$is)");
    if($conn->affected_rows>0) $msg="Subject added!"; else $err=$conn->error;
}
if ($_POST['action']??''=='toggle') {
    $id=intval($_POST['id']); $ia=intval($_POST['is_active']);
    $conn->query("UPDATE result_subjects SET is_active=".($ia?0:1)." WHERE id=$id");
    $msg="Updated.";
}
if (isset($_GET['del'])) { $conn->query("DELETE FROM result_subjects WHERE id=".intval($_GET['del'])); $msg="Deleted."; }

$subjects=$conn->query("SELECT * FROM result_subjects ORDER BY is_scholastic DESC,applicable_from,subject_name");
$lvls=[0=>'Nursery',1=>'LKG',2=>'UKG',3=>'Cls1',4=>'Cls2',5=>'Cls3',6=>'Cls4',7=>'Cls5',8=>'Cls6',9=>'Cls7',10=>'Cls8'];
?>
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Subjects | Result</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<?php include __DIR__.'/_sidebar_style.php'; ?></head><body>
<?php include __DIR__.'/_sidebar.php'; ?>
<div class="main">
<div class="topbar"><h4><i class="fas fa-book me-2" style="color:var(--primary)"></i>Subjects Master</h4>
<button class="btn btn-primary btn-sm" data-bs-toggle="modal" data-bs-target="#addModal"><i class="fas fa-plus me-1"></i>Add Subject</button></div>
<?php if($msg): ?><div class="alert alert-success"><?=$msg?></div><?php endif; ?>
<?php if($err): ?><div class="alert alert-danger"><?=$err?></div><?php endif; ?>
<div class="card-box"><table class="table mb-0">
<thead><tr><th>#</th><th>Subject Name</th><th>Code</th><th>Type</th><th>Grading</th><th>Applies To</th><th>Status</th><th>Actions</th></tr></thead>
<tbody><?php $i=0; while($s=$subjects->fetch_assoc()): $i++; ?>
<tr>
<td><?=$i?></td>
<td class="fw-600"><?=htmlspecialchars($s['subject_name'])?></td>
<td><code><?=htmlspecialchars($s['subject_code'])?></code></td>
<td><?=$s['is_scholastic']?'<span class="badge bg-primary">Scholastic</span>':'<span class="badge bg-warning text-dark">Co-Scholastic</span>'?></td>
<td><?=$s['grading_type']=='NUMERIC'?'<span class="badge bg-info">Numeric</span>':'<span class="badge bg-purple" style="background:#8b5cf6">Grade Only</span>'?></td>
<td style="font-size:11px"><?=($lvls[$s['applicable_from']]??$s['applicable_from']).' → '.($lvls[$s['applicable_to']]??$s['applicable_to'])?></td>
<td><?=$s['is_active']?'<span class="badge bg-success">Active</span>':'<span class="badge bg-secondary">Inactive</span>'?></td>
<td>
<form method="POST" class="d-inline"><input type="hidden" name="action" value="toggle"><input type="hidden" name="id" value="<?=$s['id']?>"><input type="hidden" name="is_active" value="<?=$s['is_active']?>">
<button class="btn btn-sm btn-outline-<?=$s['is_active']?'warning':'success'?>" style="font-size:11px"><?=$s['is_active']?'Disable':'Enable'?></button></form>
<a href="?del=<?=$s['id']?>" class="btn btn-sm btn-outline-danger ms-1" style="font-size:11px" onclick="return confirm('Delete subject?')"><i class="fas fa-trash"></i></a>
</td></tr>
<?php endwhile; ?></tbody></table></div></div>
<div class="modal fade" id="addModal" tabindex="-1"><div class="modal-dialog"><div class="modal-content">
<div class="modal-header" style="background:linear-gradient(135deg,var(--primary),#1a6ba0);color:#fff">
<h5 class="modal-title">Add Subject</h5><button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal"></button></div>
<form method="POST"><input type="hidden" name="action" value="add"><div class="modal-body">
<div class="mb-3"><label class="form-label fw-600">Subject Name *</label><input type="text" name="subject_name" class="form-control" required placeholder="e.g. Mathematics"></div>
<div class="mb-3"><label class="form-label fw-600">Subject Code *</label><input type="text" name="subject_code" class="form-control" required placeholder="e.g. MATH"></div>
<div class="row g-3 mb-3">
<div class="col-6"><label class="form-label fw-600">Grading Type</label>
<select name="grading_type" class="form-select"><option value="NUMERIC">Numeric (Marks)</option><option value="GRADE">Grade Only</option></select></div>
<div class="col-6"><label class="form-label fw-600">Scholastic?</label>
<div class="form-check mt-2"><input type="checkbox" class="form-check-input" name="is_scholastic" id="is_sch" checked><label class="form-check-label" for="is_sch">Yes (Scholastic)</label></div></div></div>
<div class="row g-3">
<div class="col-6"><label class="form-label fw-600">Applicable From Level</label>
<select name="applicable_from" class="form-select"><?php foreach($lvls as $l=>$n): ?><option value="<?=$l?>"><?=$n?></option><?php endforeach; ?></select></div>
<div class="col-6"><label class="form-label fw-600">Applicable To Level</label>
<select name="applicable_to" class="form-select"><?php foreach($lvls as $l=>$n): ?><option value="<?=$l?>" <?=$l==10?'selected':''?> ><?=$n?></option><?php endforeach; ?></select></div>
</div></div>
<div class="modal-footer"><button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary">Save Subject</button></div></form></div></div></div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script></body></html>
