0) { qrun("UPDATE forum_categories SET is_active=0 WHERE id=?", [$id]); flash('Category has topics, so it was deactivated instead of deleted.', 'warning'); } else { qrun("DELETE FROM forum_categories WHERE id=?", [$id]); flash('Category deleted.', 'success'); } go('/admin/forum.php#categories'); } if (in_array($act, ['toggle_pin','toggle_lock','delete_topic'], true)) { $id = (int)p('id'); if ($act === 'toggle_pin') { qrun("UPDATE forum_topics SET is_pinned=1-is_pinned WHERE id=?", [$id]); flash('Topic pin status updated.', 'success'); } elseif ($act === 'toggle_lock') { qrun("UPDATE forum_topics SET is_locked=1-is_locked WHERE id=?", [$id]); flash('Topic lock status updated.', 'success'); } else { qrun("DELETE FROM forum_topics WHERE id=?", [$id]); flash('Topic deleted.', 'success'); } go('/admin/forum.php#topics'); } } $adminTitle = 'Forum'; include __DIR__.'/admin_header.php'; $forumEnabled = setting('forum_enabled','1'); $forumUploadMax = setting('forum_upload_max_mb','5'); $forumAllowed = setting('forum_allowed_filetypes','jpg,jpeg,png,gif,webp,pdf,txt,doc,docx'); $resizeThreshold = setting('forum_image_resize_threshold_mb','1'); $resizeMaxWidth = setting('forum_image_max_width','1600'); $resizeQuality = setting('forum_image_quality','82'); $counts = [ 'Topics' => qval("SELECT COUNT(*) FROM forum_topics"), 'Replies' => qval("SELECT COUNT(*) FROM forum_replies"), 'Categories' => qval("SELECT COUNT(*) FROM forum_categories"), 'Attachments' => qval("SELECT COUNT(*) FROM forum_attachments"), ]; $categories = qall(" SELECT fc.*, COUNT(ft.id) topic_count FROM forum_categories fc LEFT JOIN forum_topics ft ON ft.category_id=fc.id GROUP BY fc.id ORDER BY fc.sort_order, fc.name "); $topics = qall(" SELECT ft.*, fc.name category_name, u.username, (SELECT COUNT(*) FROM forum_replies fr WHERE fr.topic_id=ft.id) reply_count FROM forum_topics ft JOIN forum_categories fc ON fc.id=ft.category_id JOIN users u ON u.id=ft.user_id ORDER BY ft.is_pinned DESC, datetime(ft.updated_at) DESC LIMIT 60 "); ?>
$value): ?>
FORUM SETTINGS
Comma-separated extensions.
ADD CATEGORY
CATEGORIES
NameDescriptionTopicsStatusOrderActions
Active':'Inactive'?>
Edit
RECENT TOPICS
TopicCategoryByRepliesStatusActions
Pinned Locked
No forum topics yet.