Sha256: 2aa13413749b3d0f7b868ea18be7bfd55fa4c95f1937c00a25c085c2ef23f49e

Contents?: true

Size: 755 Bytes

Versions: 2

Compression:

Stored size: 755 Bytes

Contents

def send_action_mails args
  setting = "on_#{args[:on]}".to_sym
  email_templates_for( setting ) do |mailcard|
    mailcard.deliver( context: self )
  end
end

def email_templates_for setting

  if email_templates = @email_template_cache ||
      ( event_card = self.rule_card(setting) and event_card.extended_item_cards )
    email_templates.each do |mailcard|
      yield(mailcard)
    end
  end
end

[:create, :update, :delete].each do |action|
  event "observer_#{action}".to_sym, :after=>:extend, :on=>action do
    self.send_action_mails :on=>action
  end
end

event :cache_delete_email_templates, :after=>:approve, :on=>:delete do
  event_card = self.rule_card(:on_delete)
  @email_template_cache = event_card && event_card.extended_item_cards
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
card-1.16.6 mod/05_email/set/all/observer.rb
card-1.16.5 mod/05_email/set/all/observer.rb