Sha256: de60b95a44540e128ecfdf1bde18a79211e9ebb35841f617d230633a18a4e14b

Contents?: true

Size: 892 Bytes

Versions: 7

Compression:

Stored size: 892 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
    
    RequestToken.transaction do
      access_token = AccessToken.create(:user => user, :client_application => client_application)
      invalidate!
      access_token
    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 & 2 rubygems

Version Path
oauth-plugin-0.4.0.rc2 generators/oauth_provider/templates/request_token.rb
oauth-plugin-0.4.0.rc1 generators/oauth_provider/templates/request_token.rb
oauth-plugin-0.4.0.pre7 generators/oauth_provider/templates/request_token.rb
oauth-plugin-0.4.0.pre6 generators/oauth_provider/templates/request_token.rb
oauth-plugin-0.4.0.pre5 generators/oauth_provider/templates/request_token.rb
insrc-oauth-plugin-0.4.0.pre6 generators/oauth_provider/templates/request_token.rb
insrc-oauth-plugin-0.4.0.pre5 generators/oauth_provider/templates/request_token.rb