mirror of
https://github.com/discourse/discourse.git
synced 2026-08-11 01:57:29 +08:00
Previously, the redesigned admin dashboard couldn't show how a community handles its support topics, and plugins had no way to contribute their own dashboard sections — only individual highlight KPIs. This change adds a register_admin_dashboard_section plugin API and uses it in discourse-solved to add a Support section for communities with at least one category where accepted answers are enabled. **Core: register_admin_dashboard_section** A new plugin API (mirroring the existing highlight-KPI registration) lets a plugin register a dashboard section with an id, an optional enabled gate, and a data loader; the JS api.registerAdminDashboardSection(id, component) supplies the matching client component. The section configuration, parallel loader, and dashboard component render registered sections dynamically alongside the core ones. Also in the core commit: the dev database pool is raised so the dashboard's parallel section loader isn't starved of connections with an extra section, and a stray db-section__row-block divider on mobile is fixed. **Support section (discourse-solved)** For the selected period, scoped to categories where "Allow topic owner and staff to mark a reply as the solution" is enabled, the section shows: - KPIs with previous-period deltas: resolution rate (drill-through to the accepted_solutions report), staff involvement, and average first-reply time. - Topic outcomes - resolved / in progress / unanswered. - Who's answering - a breakdown of repliers by trust level and staff. - Response time distribution - first-reply times bucketed into <1h, 1–4h, 4–24h, >24h, with a faster/slower trend. - A category filter when more than one support category exists. Screenshots: <img width="804" height="748" alt="Screenshot 2026-07-02 at 10 58 13 am" src="https://github.com/user-attachments/assets/8e938a5e-93df-446f-885c-3d779431ab9b" /> <img width="396" height="789" alt="Screenshot 2026-07-02 at 10 58 01 am" src="https://github.com/user-attachments/assets/9a9a171d-42d9-482c-950c-5daad055a746" /> --------- Co-authored-by: chapoi <101828855+chapoi@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| admin/search | ||
| admin_notices | ||
| categories | ||
| category | ||
| concerns | ||
| discourse_id | ||
| email_login_code | ||
| flags | ||
| groups | ||
| nested_topic | ||
| notification/action | ||
| notifications | ||
| problem_check | ||
| site_setting | ||
| site_setting_localizations/about_config | ||
| spam_rule | ||
| tags | ||
| themes | ||
| upcoming_changes | ||
| user | ||
| user_api_key | ||
| video_conversion | ||
| access_control_list_manager.rb | ||
| admin_dashboard_engagement.rb | ||
| admin_dashboard_highlights.rb | ||
| admin_dashboard_search.rb | ||
| admin_dashboard_section_configuration.rb | ||
| admin_dashboard_section_loader.rb | ||
| admin_dashboard_site_traffic.rb | ||
| anonymous_shadow_creator.rb | ||
| badge_granter.rb | ||
| base_bookmarkable.rb | ||
| category_hashtag_data_source.rb | ||
| color_scheme_revisor.rb | ||
| destroy_task.rb | ||
| email_settings_exception_handler.rb | ||
| email_settings_validator.rb | ||
| email_style_updater.rb | ||
| external_upload_manager.rb | ||
| group_action_logger.rb | ||
| group_mentions_updater.rb | ||
| group_message.rb | ||
| handle_chunk_upload.rb | ||
| hashtag_autocomplete_service.rb | ||
| heat_settings_updater.rb | ||
| hub_push_notification_pusher.rb | ||
| inline_uploads.rb | ||
| locale_normalizer.rb | ||
| notification_emailer.rb | ||
| post_action_notifier.rb | ||
| post_alerter.rb | ||
| post_bookmarkable.rb | ||
| post_owner_changer.rb | ||
| push_notification_pusher.rb | ||
| random_topic_selector.rb | ||
| registered_bookmarkable.rb | ||
| search_indexer.rb | ||
| sidebar_section_links_updater.rb | ||
| sidebar_site_settings_backfiller.rb | ||
| site_setting_update_existing_users.rb | ||
| site_settings_task.rb | ||
| staff_action_logger.rb | ||
| tag_hashtag_data_source.rb | ||
| tag_settings_updater.rb | ||
| theme_settings_migrations_runner.rb | ||
| themes_install_task.rb | ||
| topic_bookmarkable.rb | ||
| topic_status_updater.rb | ||
| topic_timestamp_changer.rb | ||
| tracked_topics_updater.rb | ||
| trust_level_granter.rb | ||
| user_action_manager.rb | ||
| user_activator.rb | ||
| user_anonymizer.rb | ||
| user_authenticator.rb | ||
| user_destroyer.rb | ||
| user_merger.rb | ||
| user_notification_renderer.rb | ||
| user_notification_schedule_processor.rb | ||
| user_password_expirer.rb | ||
| user_silencer.rb | ||
| user_stat_count_updater.rb | ||
| user_suspender.rb | ||
| user_updater.rb | ||
| username_changer.rb | ||
| username_checker_service.rb | ||
| web_hook_emitter.rb | ||
| wildcard_domain_checker.rb | ||
| wildcard_url_checker.rb | ||
| word_watcher.rb | ||