Sha256: 9bf76b1365f1046f3fd706227a4a88719ca57af8d7b561cda217da88b260abab

Contents?: true

Size: 776 Bytes

Versions: 2

Compression:

Stored size: 776 Bytes

Contents

module Overrides
  class SessionsController < DeviseTokenAuth::SessionsController
    OVERRIDE_PROOF = "(^^,)"

    def create
      self.resource = warden.authenticate!(auth_options)
      sign_in(resource_name, resource, :store => false)
      @client_id = SecureRandom.urlsafe_base64(nil, false)
      @token     = SecureRandom.urlsafe_base64(nil, false)
      @user = resource
      @user.tokens[@client_id] = {
          token: BCrypt::Password.create(@token),
          expiry: (Time.now + DeviseTokenAuth.token_lifespan).to_i
      }
      @user.save

      yield resource if block_given?
      render json: {
        data: @user.as_json(except: [
          :tokens, :created_at, :updated_at
        ]),
        override_proof: OVERRIDE_PROOF
      }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
xing_backend_token_auth-0.1.32 test/dummy/app/controllers/overrides/sessions_controller.rb
xing_backend_token_auth-0.1.31 test/dummy/app/controllers/overrides/sessions_controller.rb