Class: SessionUser

Inherits:
Object
  • Object
show all
Includes:
ActiveModel::Validations
Defined in:
app/models/session_user.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ SessionUser

Instance Methods =====================================================



44
45
46
47
48
49
50
# File 'app/models/session_user.rb', line 44

def initialize(params = {})
  if params
    @email = params[:email]
    @password = params[:password]
    @remember_me = params[:remember_me]
  end
end

Instance Attribute Details

#emailObject

Attribute ==========================================================



6
7
8
# File 'app/models/session_user.rb', line 6

def email
  @email
end

#passwordObject

Returns the value of attribute password.



7
8
9
# File 'app/models/session_user.rb', line 7

def password
  @password
end

#remember_meObject

Returns the value of attribute remember_me.



8
9
10
# File 'app/models/session_user.rb', line 8

def remember_me
  @remember_me
end

#userObject

Returns the value of attribute user.



9
10
11
# File 'app/models/session_user.rb', line 9

def user
  @user
end

Class Method Details

.create(params = {}) ⇒ Object

Class Methods ========================================================



36
37
38
39
40
# File 'app/models/session_user.rb', line 36

def self.create(params={})
  session_user = self.new(params)
  session_user.save
  session_user
end

Instance Method Details

#saveObject



52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'app/models/session_user.rb', line 52

def save
  return unless self.valid?
  if @user = User.authenticate(self.email, self.password) 
    if @user.is_verified?
      return @user
    else
      @user.email_verification_key ||= @user.set_email_verification_key
      @user.save!
      self.errors.add(:email, "This email address needs to be verified before you can login. <a href='/resend-email-verification/#{@user.email_verification_key}'>Resend verification</a>".html_safe)
      return false
    end
  end
end

#to_keyObject



66
67
68
# File 'app/models/session_user.rb', line 66

def to_key
  nil
end