discourse/lib/validators/at_least_one_group_validator.rb
Martin Brennan 9db4eaa870
DEV: Change anonymous_posting_min_trust_level to a group-based setting (#24072)
No plugins or themes rely on anonymous_posting_min_trust_level so we
can just switch straight over to anonymous_posting_allowed_groups

This also adds an AUTO_GROUPS const which can be imported in JS
tests which is analogous to the one defined in group.rb. This can be used
to set the current user's groups where JS tests call for checking these groups
against site settings.

Finally a AtLeastOneGroupValidator validator is added for group_list site
settings which ensures that at least one group is always selected, since if
you want to allow all users to use a feature in this way you can just use
the everyone group.
2023-10-25 11:45:10 +10:00

16 lines
268 B
Ruby

# frozen_string_literal: true
class AtLeastOneGroupValidator
def initialize(opts = {})
@opts = opts
end
def valid_value?(val)
val.present? && val != ""
end
def error_message
I18n.t("site_settings.errors.at_least_one_group_required")
end
end