Class: User

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/user.rb

Instance Method Summary collapse

Instance Method Details

#email_changed?Boolean

don’t use default devise email validation

Returns:

  • (Boolean)


30
31
32
# File 'app/models/user.rb', line 30

def email_changed?
  false
end

#email_required?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'app/models/user.rb', line 40

def email_required?
  provider == 'email'
end

#serializable_hash(options = {}) ⇒ Object



23
24
25
26
27
# File 'app/models/user.rb', line 23

def serializable_hash(options={})
  options ||= {}
  options[:except] ||= [:tokens]
  super(options)
end

#unique_email_userObject



34
35
36
37
38
# File 'app/models/user.rb', line 34

def unique_email_user
  if provider == 'email' and User.where(provider: 'email', email: email).count > 0
    errors.add(:email, "Your email address is already in use")
  end
end

#valid_token?(client_id, token) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
19
20
21
# File 'app/models/user.rb', line 16

def valid_token?(client_id, token)
  return false unless self.tokens[client_id]['expiry'] > 2.weeks.ago
  return false unless BCrypt::Password.new(self.tokens[client_id]['token']) == token

  return true
end