Sha256: fd76ed67aab86853a9976bcd3f37cbc14673cd4aad6cf840356b25472f7823c0

Contents?: true

Size: 472 Bytes

Versions: 7

Compression:

Stored size: 472 Bytes

Contents

# Merges users orders to their account after sign in and sign up.
Warden::Manager.after_set_user except: :fetch do |user, auth, opts|
  if auth.cookies.signed[:guest_token].present?
    if user.is_a?(Spree::User)
      Spree::Order.where(guest_token: auth.cookies.signed[:guest_token], user_id: nil).each do |order|
        order.associate_user!(user)
      end
    end
  end
end

Warden::Manager.before_logout do |user, auth, opts|
  auth.cookies.delete :guest_token
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
solidus_auth_devise-1.3.0 config/initializers/warden.rb
solidus_auth_devise-1.2.3 config/initializers/warden.rb
solidus_auth_devise-1.2.2 config/initializers/warden.rb
solidus_auth_devise-1.2.1 config/initializers/warden.rb
solidus_auth_devise-1.2.0 config/initializers/warden.rb
solidus_auth_devise-1.1.0 config/initializers/warden.rb
solidus_auth_devise-1.0.0 config/initializers/warden.rb