Sha256: a0f30e5d5e195c91181b6d370379bb35398e7c1ea2673dfbffce4890cc313ca7

Contents?: true

Size: 721 Bytes

Versions: 6

Compression:

Stored size: 721 Bytes

Contents

module Devise
  module Serializers
    class Rememberable < Warden::Serializers::Cookie
      include Devise::Serializers::Base

      def store(record, scope)
        remember_me = params[scope].try(:fetch, :remember_me, nil)
        if Devise::TRUE_VALUES.include?(remember_me) && record.respond_to?(:remember_me!)
          record.remember_me!
          super
        end
      end
      
      def default_options(record)
        super.merge!(:expires => record.remember_expires_at)
      end

      def delete(scope, record=nil)
        record.forget_me! if record && record.respond_to?(:forget_me!)
        super
      end
    end
  end
end

Warden::Serializers.add(:rememberable, Devise::Serializers::Rememberable)

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
devise-0.5.6 lib/devise/serializers/rememberable.rb
devise-0.5.5 lib/devise/serializers/rememberable.rb
devise-0.5.4 lib/devise/serializers/rememberable.rb
devise-0.5.3 lib/devise/serializers/rememberable.rb
devise-0.5.2 lib/devise/serializers/rememberable.rb
devise-0.5.1 lib/devise/serializers/rememberable.rb