Class: UserNotifier::Base
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- UserNotifier::Base
- Defined in:
- app/models/user_notifier/base.rb
Class Method Summary collapse
- .notify(template_name, user, source = nil, params = {}) ⇒ Object
- .notify_once(template_name, user, source = nil, params = {}) ⇒ Object
Instance Method Summary collapse
Class Method Details
.notify(template_name, user, source = nil, params = {}) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/models/user_notifier/base.rb', line 8 def self.notify(template_name, user, source = nil, params = {}) source ||= user create!({ template_name: template_name, locale: I18n.locale, from_email: UserNotifier.from_email, from_name: UserNotifier.from_name, source: source, self.user_association_name => user }.merge(params)).tap{|n| n.deliver } end |
.notify_once(template_name, user, source = nil, params = {}) ⇒ Object
4 5 6 |
# File 'app/models/user_notifier/base.rb', line 4 def self.notify_once(template_name, user, source = nil, params = {}) notify(template_name, user, source, params) if is_unique?(template_name, {self.user_association_name => user}) end |
Instance Method Details
#deliver ⇒ Object
20 21 22 |
# File 'app/models/user_notifier/base.rb', line 20 def deliver deliver! unless self.sent_at.present? end |
#deliver! ⇒ Object
24 25 26 |
# File 'app/models/user_notifier/base.rb', line 24 def deliver! UserNotifier::EmailWorker.perform_async(self.class.name.to_s, self.id) end |