Files
discourse/plugins/discourse-solved/config/settings.yml
T
Régis Hanol 39a426505d FEATURE: allow marking solutions in group messages (#37635)
PM support for the solved plugin was intentionally removed in
https://github.com/discourse/discourse-solved/pull/334, but multiple
communities rely on solved in group messages for private support
workflows (e.g. using Discourse as an internal ticket system).

Add a new `allow_solved_in_groups` site setting (group list, default
empty) that enables the solved UI for group messages belonging to the
configured groups. Regular 1-on-1 PMs remain excluded.

The implementation adds an early return in `allow_accepted_answers?` for
private messages that checks whether the topic's allowed groups
intersect with the configured setting. The category/tag logic is
extracted into `solved_enabled_for_category?` so callers without a topic
object (e.g. the category-change diff in plugin.rb) still work. All
existing PM exclusions (reports, badges, filters, directory columns) are
intentionally left unchanged.

https://meta.discourse.org/t/370496
2026-02-11 07:51:22 +01:00

68 lines
1.5 KiB
YAML

discourse_solved:
solved_enabled:
default: true
client: true
show_who_marked_solved:
default: false
client: true
allow_solved_on_all_topics:
default: false
client: true
allow_solved_in_groups:
type: group_list
default: ""
allow_any: false
refresh: true
accept_all_solutions_trust_level:
default: 4
client: true
enum: "TrustLevelSetting"
hidden: true
accept_all_solutions_allowed_groups:
default: "1|2|14" # auto group admin, moderators and trust_level_4
mandatory_values: "1|2" # auto group admins, moderators
type: group_list
client: false
allow_any: false
refresh: true
validator: "AtLeastOneGroupValidator"
empty_box_on_unsolved:
default: false
client: true
solved_quote_length:
default: 300
client: false
solved_topics_auto_close_hours:
default: 0
min: 0
max: 175200 # 20 years
show_filter_by_solved_status:
default: false
client: true
notify_on_staff_accept_solved:
default: false
ignore_solved_topics_in_assigned_reminder:
default: false
assignment_status_on_solve:
type: string
default: ""
assignment_status_on_unsolve:
type: string
default: ""
disable_solved_education_message:
default: false
accept_solutions_topic_author:
default: true
solved_add_schema_markup:
type: enum
default: "always"
choices:
- "never"
- "always"
- "answered only"
prioritize_solved_topics_in_search: false
enable_solved_tags:
type: tag_list
default: ""