discourse/lib/validators
Martin Brennan 3d2cace94f
DEV: Add service to validate email settings (#13021)
We have a few places in the code where we need to validate various email related settings, and will have another soon with the improved group email settings UI. This PR introduces a class which can validate POP3, IMAP, and SMTP credentials and also provide a friendly error message for issues if they must be presented to an end user.

This PR does not change any existing code to use the new service. I have added a TODO to change POP3 validation and the email test rake task to use the new validator post-release.
2021-05-13 15:11:23 +10:00
..
allow_user_locale_enabled_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
allowed_ip_address_validator.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
alternative_reply_by_email_addresses_validator.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
categories_topics_validator.rb UX: Introduce automatic 'categories topics' setting (#8804) 2020-01-29 20:30:48 +02:00
category_search_priority_weights_validator.rb FEATURE: Change very high/low search priority to rank at absolute ends. 2021-03-09 09:20:37 +08:00
censored_words_validator.rb DEV: stop freezing frozen strings 2020-04-30 16:48:53 +10:00
color_list_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email_setting_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
email_validator.rb FIX: Improve error messages for invites (#12714) 2021-04-15 14:46:32 +03:00
enable_invite_only_validator.rb FEATURE: Rename 'Discourse SSO' to DiscourseConnect (#11978) 2021-02-08 10:04:33 +00:00
enable_local_logins_via_email_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
enable_private_email_messages_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
enable_sso_validator.rb FEATURE: Rename 'Discourse SSO' to DiscourseConnect (#11978) 2021-02-08 10:04:33 +00:00
external_system_avatars_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
group_setting_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
integer_setting_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
ip_address_format_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
markdown_typographer_quotation_marks_validator.rb FEATURE: Site setting for typographic quotation marks 2019-07-11 23:19:28 +02:00
max_emojis_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
max_username_length_validator.rb DEV: pluck_first 2019-10-21 12:08:20 +01:00
min_username_length_validator.rb DEV: pluck_first 2019-10-21 12:08:20 +01:00
password_validator.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
pop3_polling_enabled_setting_validator.rb DEV: Add service to validate email settings (#13021) 2021-05-13 15:11:23 +10:00
post_validator.rb FIX - limit number of embedded media items in a post (#10391) 2020-08-07 12:08:59 -04:00
quality_title_validator.rb FEATURE: Improve errors when title is invalid (#11149) 2020-11-11 15:11:36 +02:00
regex_presence_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
regex_setting_validation.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
regex_setting_validator.rb DEV: stop freezing frozen strings 2020-04-30 16:48:53 +10:00
reply_by_email_address_validator.rb DEV: stop mutating inputs as a side effect 2019-04-30 10:25:53 +10:00
reply_by_email_enabled_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
selectable_avatars_enabled_validator.rb DEV: Make site setting type uploaded_image_list use upload IDs (#10401) 2020-10-13 16:17:06 +03:00
sso_overrides_email_validator.rb FEATURE: sso_overrides_(email|username|name) for all auth methods 2020-07-06 10:18:45 +01:00
string_setting_validator.rb DEV: Add experimental json_scheme site setting type (#12226) 2021-03-01 09:15:17 -05:00
stripped_length_validator.rb FIX: post merging was failing silently (#12566) 2021-04-01 06:46:18 +05:30
timezone_validator.rb FEATURE: Add timezone to core user_options (#8380) 2019-11-25 10:49:27 +10:00
topic_title_length_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
unicode_username_allowlist_validator.rb FIX: use allowlist and blocklist terminology (#10209) 2020-07-27 10:23:54 +10:00
unicode_username_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
unique_among_validator.rb DEV: Upgrade Rails to 6.1.3.1 (#12688) 2021-04-21 12:36:32 +03:00
upload_validator.rb FIX: use allowlist and blocklist terminology (#10209) 2020-07-27 10:23:54 +10:00
url_validator.rb FIX: Replace deprecated URI.encode, URI.escape, URI.unescape and URI.unencode (#8528) 2019-12-12 12:49:21 +10:00
user_full_name_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
username_setting_validator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
watched_words_validator.rb FEATURE: topic title is validated for blocked words (#8127) 2019-10-02 10:38:34 +10:00