0) { require_permission('classes', 'delete'); $stmt = db()->prepare("DELETE FROM classes WHERE id = ?"); $stmt->execute([$post_id]); header('Location: ' . app_url('admin.php', ['page' => 'classes'])); exit; } if ($post_action === 'edit' || $post_action === 'add') { require_permission('classes', $post_action === 'add' ? 'add' : 'edit'); $name_en = $_POST['name_en'] ?? ''; $name_ar = $_POST['name_ar'] ?? ''; $desc_en = $_POST['description_en'] ?? ''; $desc_ar = $_POST['description_ar'] ?? ''; $status = $_POST['status'] ?? 'active'; if ($post_action === 'edit' && $post_id > 0) { $stmt = db()->prepare("UPDATE classes SET name_en=?, name_ar=?, description_en=?, description_ar=?, status=? WHERE id=?"); $stmt->execute([$name_en, $name_ar, $desc_en, $desc_ar, $status, $post_id]); } else { $stmt = db()->prepare("INSERT INTO classes (name_en, name_ar, description_en, description_ar, status) VALUES (?, ?, ?, ?, ?)"); $stmt->execute([$name_en, $name_ar, $desc_en, $desc_ar, $status]); } header('Location: ' . app_url('admin.php', ['page' => 'classes'])); exit; } } // list view $search = $_GET['search'] ?? ''; $page_num = max(1, (int)($_GET['p'] ?? 1)); $limit = 10; $offset = ($page_num - 1) * $limit; $where = ""; $params = []; if ($search !== '') { $where = "WHERE name_en LIKE ? OR name_ar LIKE ?"; $params[] = "%$search%"; $params[] = "%$search%"; } $total_stmt = db()->prepare("SELECT COUNT(*) FROM classes $where"); $total_stmt->execute($params); $total = $total_stmt->fetchColumn(); $pages = ceil($total / $limit); $stmt = db()->prepare("SELECT * FROM classes $where ORDER BY id DESC LIMIT $limit OFFSET $offset"); $stmt->execute($params); $items = $stmt->fetchAll(PDO::FETCH_ASSOC); ?>

ID
1): ?>