Sha256: 29d85d489d88777a640e53d6406456a6a1e9b37def8971fb6159cf014254660a

Contents?: true

Size: 834 Bytes

Versions: 7

Compression:

Stored size: 834 Bytes

Contents

class RequestToken < OauthToken
  attr_accessor :provided_oauth_verifier

  def authorize!(user)
    return false if authorized?
    self.user           = user
    self.authorized_at  = Time.now
    self.verifier       = OAuth::Helper.generate_key(20)[0,20] unless oauth10?
    self.save
  end

  def exchange!
    return false unless authorized?
    return false unless oauth10? || verifier == provided_oauth_verifier

    AccessToken.create(:user => user, :client_application => client_application).tap do
      invalidate!
    end
  end

  def to_query
    if oauth10?
      super
    else
      "#{super}&oauth_callback_confirmed=true"
    end
  end

  def oob?
    callback_url.nil? || callback_url.downcase == 'oob'
  end

  def oauth10?
    (defined? OAUTH_10_SUPPORT) && OAUTH_10_SUPPORT && self.callback_url.blank?
  end
end

Version data entries

7 entries across 7 versions & 4 rubygems

Version Path
houston-oauth-plugin-0.5.1 lib/generators/mongoid/oauth_provider_templates/request_token.rb
panjiva-oauth-plugin-0.4.1 lib/generators/mongoid/oauth_provider_templates/request_token.rb
oauth-plugin-0.5.1 lib/generators/mongoid/oauth_provider_templates/request_token.rb
oauth-plugin-0.5.0 lib/generators/mongoid/oauth_provider_templates/request_token.rb
oauth-provider-0.5.0rc1 lib/generators/mongoid/oauth_provider_templates/request_token.rb
oauth-plugin-0.4.1 lib/generators/mongoid/oauth_provider_templates/request_token.rb
oauth-plugin-0.4.0 lib/generators/mongoid/oauth_provider_templates/request_token.rb