Module: Saucy::Account::InstanceMethods

Defined in:
lib/saucy/account.rb

Instance Method Summary collapse

Instance Method Details

#admin_emailsObject



68
69
70
# File 'lib/saucy/account.rb', line 68

def admin_emails
  admins.map(&:email)
end

#expired?Boolean

Returns:

  • (Boolean)


60
61
62
# File 'lib/saucy/account.rb', line 60

def expired?
  trial? && past_trial?
end

#has_member?(user) ⇒ Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/saucy/account.rb', line 40

def has_member?(user)
  memberships.exists?(:user_id => user.id)
end

#memberships_by_nameObject



56
57
58
# File 'lib/saucy/account.rb', line 56

def memberships_by_name
  memberships.by_name
end

#past_trial?Boolean

Returns:

  • (Boolean)


64
65
66
# File 'lib/saucy/account.rb', line 64

def past_trial?
  trial_expires_at && trial_expires_at < Time.now
end

#projects_by_nameObject



48
49
50
# File 'lib/saucy/account.rb', line 48

def projects_by_name
  projects.by_name
end

#projects_countObject



85
86
87
# File 'lib/saucy/account.rb', line 85

def projects_count
  projects.active.count
end

#projects_visible_to(user) ⇒ Object



52
53
54
# File 'lib/saucy/account.rb', line 52

def projects_visible_to(user)
  projects.visible_to(user)
end

#set_trial_expirationObject



72
73
74
75
76
77
78
79
# File 'lib/saucy/account.rb', line 72

def set_trial_expiration
  number_free_days = if coupon
                       30 * coupon.free_months
                     else
                       30
                     end
  self.trial_expires_at = number_free_days.days.from_now(created_at || Time.now)
end

#to_paramObject



36
37
38
# File 'lib/saucy/account.rb', line 36

def to_param
  keyword
end

#users_by_nameObject



44
45
46
# File 'lib/saucy/account.rb', line 44

def users_by_name
  users.by_name
end

#users_countObject



81
82
83
# File 'lib/saucy/account.rb', line 81

def users_count
  users.count
end