Class: UserNotifier::Base
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- UserNotifier::Base
- Defined in:
- lib/user_notifier/models/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
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/user_notifier/models/base.rb', line 9 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)) end |
.notify_once(template_name, user, source = nil, params = {}) ⇒ Object
5 6 7 |
# File 'lib/user_notifier/models/base.rb', line 5 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
21 22 23 |
# File 'lib/user_notifier/models/base.rb', line 21 def deliver deliver! unless self.sent_at.present? end |
#deliver! ⇒ Object
25 26 27 |
# File 'lib/user_notifier/models/base.rb', line 25 def deliver! UserNotifier::EmailWorker.perform_at((self.try(:deliver_at) || Time.now), self.class.name.to_s, self.id) end |
#deliver_without_worker ⇒ Object
29 30 31 |
# File 'lib/user_notifier/models/base.rb', line 29 def deliver_without_worker mailer.notify(self).deliver end |
#mailer ⇒ Object
33 34 35 |
# File 'lib/user_notifier/models/base.rb', line 33 def mailer UserNotifier::Mailer end |