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
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/user_notifier/models/base.rb', line 10 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
6 7 8 |
# File 'lib/user_notifier/models/base.rb', line 6 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
22 23 24 |
# File 'lib/user_notifier/models/base.rb', line 22 def deliver deliver! unless self.sent_at.present? end |
#deliver! ⇒ Object
26 27 28 |
# File 'lib/user_notifier/models/base.rb', line 26 def deliver! UserNotifier::EmailWorker.perform_at((self.try(:deliver_at) || Time.now), self.class.name.to_s, self.id) end |
#deliver_without_worker ⇒ Object
30 31 32 |
# File 'lib/user_notifier/models/base.rb', line 30 def deliver_without_worker mailer.notify(self).deliver end |
#mailer ⇒ Object
34 35 36 |
# File 'lib/user_notifier/models/base.rb', line 34 def mailer UserNotifier::Mailer end |