Sha256: f7bcff1cd149a2bb200a95c4f157df3af4b074e6a78b3555aa54aa28ec371469

Contents?: true

Size: 537 Bytes

Versions: 116

Compression:

Stored size: 537 Bytes

Contents

module CoalescingPanda
  class Session < ActiveRecord::Base
    serialize :data, Hash

    def self.create_from_session(session)
      params = {}
      session.keys.each do |key|
        params[key] = session[key]
      end
      token = SecureRandom.hex(10)
      Session.create(token: token, data: params)
      token
    end

    def self.restore_from_token(token, session)
      saved_session = Session.find_by_token(token)
      saved_session.data.each_pair do |key, value|
        session[key] = value
      end
    end
  end
end

Version data entries

116 entries across 116 versions & 1 rubygems

Version Path
coalescing_panda-5.1.2 app/models/coalescing_panda/session.rb
coalescing_panda-5.1.0 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.10 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.9 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.8 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.7 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.6 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.4 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.3 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.2 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.1 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.0 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.0.beta.2 app/models/coalescing_panda/session.rb
coalescing_panda-5.0.0.beta.1 app/models/coalescing_panda/session.rb
coalescing_panda-4.8.0.beta.1 app/models/coalescing_panda/session.rb
coalescing_panda-4.7.0 app/models/coalescing_panda/session.rb
coalescing_panda-4.6.1 app/models/coalescing_panda/session.rb
coalescing_panda-4.6.0 app/models/coalescing_panda/session.rb
coalescing_panda-4.6.0.rc3 app/models/coalescing_panda/session.rb
coalescing_panda-4.6.0.rc2 app/models/coalescing_panda/session.rb