Module: Saucy::Account::ClassMethods

Defined in:
lib/saucy/account.rb

Instance Method Summary collapse

Instance Method Details

#deliver_expiring_trial_notificationsObject



85
86
87
88
89
90
91
# File 'lib/saucy/account.rb', line 85

def deliver_expiring_trial_notifications
  trial_expiring.each do ||
    BillingMailer.expiring_trial().deliver
    .notified_of_expiration = true
    .save!
  end
end

#deliver_new_unactivated_notificationsObject



77
78
79
80
81
82
83
# File 'lib/saucy/account.rb', line 77

def deliver_new_unactivated_notifications
  new_unactivated.each do ||
    BillingMailer.new_unactivated().deliver
    .asked_to_activate = true
    .save!
  end
end

#new_unactivatedObject



100
101
102
103
# File 'lib/saucy/account.rb', line 100

def new_unactivated
  where(["accounts.created_at <= ?", 7.days.ago]).
    where(:asked_to_activate => false, :activated => false)
end

#trial_expiringObject



93
94
95
96
97
98
# File 'lib/saucy/account.rb', line 93

def trial_expiring
  includes(:plan).
    where(:plans => { :trial => true }).
    where(:notified_of_expiration => false).
    where(["accounts.trial_expires_at <= ?", 7.days.from_now])
end