discourse/lib/validators/username_setting_validator.rb
2023-01-09 12:10:19 +00:00

23 lines
436 B
Ruby

# frozen_string_literal: true
class UsernameSettingValidator
include RegexSettingValidation
def initialize(opts = {})
@opts = opts
initialize_regex_opts(opts)
end
def valid_value?(val)
!val.present? || (User.where(username: val).exists? && regex_match?(val))
end
def error_message
if @regex_fail
I18n.t(@regex_error)
else
I18n.t("site_settings.errors.invalid_username")
end
end
end