Sha256: e0f1a46fe43da2ecc99530526a6d5577553b01a1a4112aef48dfe176ebb6d9e6

Contents?: true

Size: 1.4 KB

Versions: 13

Compression:

Stored size: 1.4 KB

Contents

module Spree
  module Core
    module MailSettings

      # Override the Rails application mail settings based on preference.
      # This makes it possible to configure the mail settings
      # through an admin interface instead of requiring changes to the Rails envrionment file.
      def self.init
        ActionMailer::Base.default_url_options[:host] = Spree::Config[:site_url]
        return unless mail_method = Spree::MailMethod.current
        if mail_method.prefers_enable_mail_delivery?
          mail_server_settings = {
            :address => mail_method.preferred_mail_host,
            :domain => mail_method.preferred_mail_domain,
            :port => mail_method.preferred_mail_port,
            :authentication => mail_method.preferred_mail_auth_type
          }

          if mail_method.preferred_mail_auth_type != 'none'
            mail_server_settings[:user_name] = mail_method.preferred_smtp_username
            mail_server_settings[:password] = mail_method.preferred_smtp_password
          end

          tls = mail_method.preferred_secure_connection_type == 'TLS'
          mail_server_settings[:enable_starttls_auto] = tls

          ActionMailer::Base.smtp_settings = mail_server_settings
          ActionMailer::Base.perform_deliveries = true
        else
          #logger.warn "NOTICE: Mail not enabled"
          ActionMailer::Base.perform_deliveries = false
        end
      end

    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
spree_core-1.2.5 lib/spree/core/mail_settings.rb
spree_core-1.1.6 lib/spree/core/mail_settings.rb
spree_core-1.1.5 lib/spree/core/mail_settings.rb
spree_core-1.2.4 lib/spree/core/mail_settings.rb
spree_core-1.3.2 lib/spree/core/mail_settings.rb
spree_core-1.2.3 lib/spree/core/mail_settings.rb
spree_core-1.3.1 lib/spree/core/mail_settings.rb
spree_core-1.3.0 lib/spree/core/mail_settings.rb
spree_core-1.3.0.rc2 lib/spree/core/mail_settings.rb
dup_spree_core-1.3.0.rc1 lib/spree/core/mail_settings.rb
spree_core-1.3.0.rc1 lib/spree/core/mail_settings.rb
spree_core-1.2.2 lib/spree/core/mail_settings.rb
spree_core-1.1.4 lib/spree/core/mail_settings.rb