Class: Boutique::Email

Inherits:
Sequel::Model
  • Object
show all
Defined in:
lib/boutique/model.rb

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ Email

Returns a new instance of Email.



70
71
72
73
# File 'lib/boutique/model.rb', line 70

def initialize(*args)
  super
  self.created_at ||= DateTime.now
end

Instance Method Details

#validateObject



75
76
77
78
79
80
81
82
83
84
# File 'lib/boutique/model.rb', line 75

def validate
  super
  errors.add(:subscriber_id, "can't be blank") if subscriber_id.nil?

  count = self.class.
    where(subscriber_id: subscriber_id, email_key: email_key).
    exclude(id: id).
    count
  errors.add(:email_key, 'has already been sent') if count > 0
end