allow regex options on username site settings

This commit is contained in:
Neil Lalonde
2017-10-04 15:08:51 -04:00
parent c29334cf23
commit ddbd1d5ab8
4 changed files with 53 additions and 10 deletions

View File

@@ -1,13 +1,21 @@
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?
!val.present? || (User.where(username: val).exists? && regex_match?(val))
end
def error_message
I18n.t('site_settings.errors.invalid_username')
if @regex_fail
I18n.t(@regex_error)
else
I18n.t('site_settings.errors.invalid_username')
end
end
end