mirror of
https://github.com/glitch-soc/mastodon.git
synced 2025-12-14 00:08:46 +00:00
32 lines
874 B
Ruby
32 lines
874 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Mastodon
|
|
module EmailConfigurationHelper
|
|
module_function
|
|
|
|
# Convert smtp settings from environment variables (or defaults in
|
|
# `config/email.yml`) into the format that `ActionMailer` understands
|
|
def convert_smtp_settings(config)
|
|
enable_starttls = nil
|
|
|
|
case config[:enable_starttls]
|
|
when 'always'
|
|
enable_starttls = :always
|
|
when 'never', 'false'
|
|
enable_starttls = false
|
|
when 'auto'
|
|
enable_starttls = :auto
|
|
else
|
|
enable_starttls = config[:enable_starttls_auto] ? :auto : false unless config[:tls] || config[:ssl]
|
|
end
|
|
|
|
authentication = config[:authentication] == 'none' ? nil : (config[:authentication] || 'plain')
|
|
|
|
config.without(:enable_starttls_auto).merge(
|
|
authentication:,
|
|
enable_starttls:
|
|
)
|
|
end
|
|
end
|
|
end
|