Sha256: 54c41d9470e2618d383d489ff0be36b4acbeaa0e6ea6ec01d7a4a9daeebca8a7

Contents?: true

Size: 963 Bytes

Versions: 2

Compression:

Stored size: 963 Bytes

Contents

class User <%= options[:persist]  ? "< ActiveRecord::Base" : "" %>
<% if options[:persist] %>
  attr_accessible :uid
  attr_accessor :aai
  PERSISTENT = true
<% else %>
  attr_accessor :aai, :uid
  PERSISTENT = false
<% end %>

  def name
    aai[:info][:name]
  rescue
    nil
  end

  def email
    aai[:info][:email]
  rescue
    nil
  end

<% if options[:persist] %>

  def marshal
    self.uid
  end

  def self.unmarshal(session_data)
    user = User.find_by_uid(session_data)
  end

  def unmarshal(session_data)
    self.reload
  end

<% else %>
  def marshal
    {
      id: self.uid,
      aai: aai.present? ? aai[:info] : {}
    }
  end

  def self.unmarshal(session_data)
    user = User.new
    user.unmarshal(session_data)
    return user
  end

  def unmarshal(session_data)
    self.uid = session_data[:id]
    self.aai = session_data[:aai]
  end

 <% end %>

  #def shib_session_id
  #  aai["extra"]["raw_info"]['Shib-Session-ID']
  #end
  #
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
omniauth-aai-0.5.2 lib/generators/aai/templates/user.rb
omniauth-aai-0.5.1 lib/generators/aai/templates/user.rb