Sha256: 2badc8de1eaa4e65c2b7a8aa8b54d70a59d6027537932d9619d56737265bd593

Contents?: true

Size: 1.37 KB

Versions: 24

Compression:

Stored size: 1.37 KB

Contents

module MyAdminSessionHelper

  def my_admin_sign_in(user) 
    cookies.permanent.signed["#{Rails.application.class.parent_name.downcase}_my_admin_remember_token"] = [user.id, user.salt] 
    cookies.delete("#{Rails.application.class.parent_name.downcase}_my_admin_locked")
    
    my_admin_user = user
  end
  
  def my_admin_sign_out 
    cookies.delete("#{Rails.application.class.parent_name.downcase}_my_admin_remember_token")
    cookies.delete("#{Rails.application.class.parent_name.downcase}_my_admin_locked")
    my_admin_user = nil
  end
  
  def my_admin_signed_in?
    !my_admin_user.nil? and !my_admin_locked?
  end
  
  def my_admin_locked?
    !my_admin_locked.nil? 
  end
  
  def my_admin_lock
    cookies.permanent.signed["#{Rails.application.class.parent_name.downcase}_my_admin_locked"] = true
  end
  
  def my_admin_user=(user) 
    @my_admin_user = user
  end
  
  def my_admin_user
    @my_admin_user ||= my_admin_user_from_remember_token 
  end
  
  private
  
    def my_admin_user_from_remember_token 
      MyAdmin::User.authenticate_with_salt(*my_admin_remember_token)
    end
    
    def my_admin_remember_token 
      cookies.signed["#{Rails.application.class.parent_name.downcase}_my_admin_remember_token"] || [nil, nil]
    end
    
    def my_admin_locked
      cookies.signed["#{Rails.application.class.parent_name.downcase}_my_admin_locked"] || nil
    end
    
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
my_admin-0.1.13 app/helpers/my_admin_session_helper.rb
my_admin-0.1.12 app/helpers/my_admin_session_helper.rb
my_admin-0.1.11 app/helpers/my_admin_session_helper.rb
my_admin-0.1.10 app/helpers/my_admin_session_helper.rb
my_admin-0.1.9 app/helpers/my_admin_session_helper.rb
my_admin-0.1.8 app/helpers/my_admin_session_helper.rb
my_admin-0.1.7 app/helpers/my_admin_session_helper.rb
my_admin-0.1.6 app/helpers/my_admin_session_helper.rb
my_admin-0.1.5 app/helpers/my_admin_session_helper.rb
my_admin-0.1.4 app/helpers/my_admin_session_helper.rb
my_admin-0.1.3 app/helpers/my_admin_session_helper.rb
my_admin-0.1.2 app/helpers/my_admin_session_helper.rb
my_admin-0.1.1 app/helpers/my_admin_session_helper.rb
my_admin-0.0.12 app/helpers/my_admin_session_helper.rb
my_admin-0.0.11 app/helpers/my_admin_session_helper.rb
my_admin-0.0.10 app/helpers/my_admin_session_helper.rb
my_admin-0.0.9 app/helpers/my_admin_session_helper.rb
my_admin-0.0.8 app/helpers/my_admin_session_helper.rb
my_admin-0.0.7 app/helpers/my_admin_session_helper.rb
my_admin-0.0.6 app/helpers/my_admin_session_helper.rb