Sha256: fc99c8c47ea06b7739b7ac1176b0e630f1cefce4b0a9b089a0f54b6d00730464

Contents?: true

Size: 948 Bytes

Versions: 20

Compression:

Stored size: 948 Bytes

Contents

module Effective
  class EmailReview
    include ActiveModel::Model

    attr_accessor :email_template
    attr_accessor :template_name

    attr_accessor :body
    attr_accessor :subject
    attr_accessor :from
    attr_accessor :cc
    attr_accessor :bcc

    def self.build(attributes = {})
      email_review = new(attributes)
      template = email_review.email_template

      if template.present?
        email_review.body ||= template.body
        email_review.subject ||= template.subject
        email_review.from ||= template.from
        email_review.cc ||= template.cc
        email_review.bcc ||= template.bcc
        email_review.template_name ||= template.template_name
      end

      email_review
    end

    validates :body, presence: true, liquid: true
    validates :subject, liquid: true

    def email_template
      @email_template ||= Effective::EmailTemplate.where(template_name: template_name).first
    end

  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
effective_email_templates-1.9.0 app/models/effective/email_review.rb
effective_email_templates-1.8.0 app/models/effective/email_review.rb
effective_email_templates-1.7.0 app/models/effective/email_review.rb
effective_email_templates-1.6.0 app/models/effective/email_review.rb
effective_email_templates-1.5.1 app/models/effective/email_review.rb
effective_email_templates-1.5.0 app/models/effective/email_review.rb
effective_email_templates-1.4.1 app/models/effective/email_review.rb
effective_email_templates-1.4.0 app/models/effective/email_review.rb
effective_email_templates-1.3.0 app/models/effective/email_review.rb
effective_email_templates-1.2.3 app/models/effective/email_review.rb
effective_email_templates-1.2.2 app/models/effective/email_review.rb
effective_email_templates-1.2.1 app/models/effective/email_review.rb
effective_email_templates-1.2.0 app/models/effective/email_review.rb
effective_email_templates-1.1.4 app/models/effective/email_review.rb
effective_email_templates-1.1.3 app/models/effective/email_review.rb
effective_email_templates-1.1.2 app/models/effective/email_review.rb
effective_email_templates-1.1.1 app/models/effective/email_review.rb
effective_email_templates-1.1.0 app/models/effective/email_review.rb
effective_email_templates-1.0.13 app/models/effective/email_review.rb
effective_email_templates-1.0.12 app/models/effective/email_review.rb