Module: Lanes::Mailer
- Defined in:
- lib/lanes/mailer.rb
Constant Summary collapse
- @@configured =
false
Class Method Summary collapse
- .create(args = {}, &block) ⇒ Object
- .deliver(args = {}, &block) ⇒ Object
- .set_defaults(settings = SystemSettings.for_ext(:lanes)) ⇒ Object
Class Method Details
.create(args = {}, &block) ⇒ Object
25 26 27 28 29 |
# File 'lib/lanes/mailer.rb', line 25 def self.create(args = {}, &block) args[:from] = SystemSettings.for_ext(:lanes).dig('smtp', 'from') set_defaults unless @@configured Mail::Message.new(args, &block) end |
.deliver(args = {}, &block) ⇒ Object
31 32 33 34 35 36 37 |
# File 'lib/lanes/mailer.rb', line 31 def self.deliver(args = {}, &block) args[:from] = SystemSettings.for_ext(:lanes).dig('smtp', 'from') set_defaults unless @@configured mail = self.new(args, &block) mail.deliver mail end |
.set_defaults(settings = SystemSettings.for_ext(:lanes)) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/lanes/mailer.rb', line 7 def self.set_defaults(settings = SystemSettings.for_ext(:lanes)) smtp = settings['smtp'] || {} method = Lanes.env.production? ? :smtp : :test Mail.defaults do delivery_method(method, { user_name: smtp['login'], password: smtp['password'], address: smtp['server'] }) end @@configured = true end |