diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index 2b656f5ec02..88121e6d877 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -1682,10 +1682,10 @@ en: whispers_allowed_groups: "Allow private communication within topics for members of specified groups." allow_index_in_robots_txt: "Specify in robots.txt that this site is allowed to be indexed by web search engines. In exceptional cases you can permanently override robots.txt." - blocked_email_domains: "A pipe-delimited list of email domains that users are not allowed to register accounts with. Example: mailinator.com|trashmail.net" - allowed_email_domains: "A pipe-delimited list of email domains that users MUST register accounts with. WARNING: Users with email domains other than those listed will not be allowed!" + blocked_email_domains: "A pipe-delimited list of email domains that users are not allowed to register accounts with. Subdomains are automatically handled for the specified domains. Wildcard symbols * and ? are not supported. Example: mailinator.com|trashmail.net" + allowed_email_domains: "A pipe-delimited list of email domains that users MUST register accounts with. Subdomains are automatically handled for the specified domains. Wildcard symbols * and ? are not supported. WARNING: Users with email domains other than those listed will not be allowed!" normalize_emails: "Check if normalized email is unique. Normalized email removes all dots from the username and everything between + and @ symbols." - auto_approve_email_domains: "Users with email addresses from this list of domains will be automatically approved." + auto_approve_email_domains: "Users with email addresses from this list of domains will be automatically approved. Subdomains are automatically handled for the specified domains. Wildcard symbols * and ? are not supported." hide_email_address_taken: "Don't inform users that an account exists with a given email address during signup or during forgot password flow. Require full email for 'forgotten password' requests." log_out_strict: "When logging out, log out ALL sessions for the user on all devices" version_checks: "Ping the Discourse Hub for version updates and show new version messages on the /admin dashboard" diff --git a/config/site_settings.yml b/config/site_settings.yml index 5e917c9d9b7..e565dc1725d 100644 --- a/config/site_settings.yml +++ b/config/site_settings.yml @@ -532,17 +532,17 @@ login: value: "sso_provider.value_placeholder" blocked_email_domains: default: "mailinator.com" - type: list + type: host_list list_type: simple allowed_email_domains: default: "" - type: list + type: host_list list_type: simple normalize_emails: default: false auto_approve_email_domains: default: "" - type: list + type: host_list list_type: simple hide_email_address_taken: client: true diff --git a/db/migrate/20230119094939_remove_wildcard_from_email_domain_site_settings.rb b/db/migrate/20230119094939_remove_wildcard_from_email_domain_site_settings.rb new file mode 100644 index 00000000000..77a0d4cc482 --- /dev/null +++ b/db/migrate/20230119094939_remove_wildcard_from_email_domain_site_settings.rb @@ -0,0 +1,19 @@ +# frozen_string_literal: true + +class RemoveWildcardFromEmailDomainSiteSettings < ActiveRecord::Migration[7.0] + def up + execute <<~'SQL' + UPDATE site_settings + SET value = regexp_replace(value, '\*(\.)?|\?', '', 'g') + WHERE name IN ( + 'auto_approve_email_domains', + 'allowed_email_domains', + 'blocked_email_domains' + ) + SQL + end + + def down + raise ActiveRecord::IrreversibleMigration + end +end