Skip to content

Commit

Permalink
let ActiveRecord handle setting of type for ConsumerTokens
Browse files Browse the repository at this point in the history
  • Loading branch information
afeld authored and pelle committed Mar 22, 2011
1 parent 8f48cf1 commit 8fc8197
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions lib/oauth/models/consumers/token.rb
Expand Up @@ -40,12 +40,17 @@ def find_or_create_from_request_token(user,token,secret,oauth_verifier)
def find_or_create_from_access_token(user,access_token)
secret = access_token.respond_to?(:secret) ? access_token.secret : nil
if user
user.consumer_tokens.first(:conditions=>{:type=>self.to_s,:token=>access_token.token}) ||
self.create!(:user => user,:token=>access_token.token, :secret=>secret)
token = self.find_or_create_by_user_id_and_token_and_secret(user.id, access_token.token, secret)
else
ConsumerToken.first( :conditions =>{ :token=>access_token.token,:type=>self.to_s}) ||
self.create!(:type=>self.to_s,:token=>access_token.token, :secret=>secret)
token = self.find_or_create_by_token_and_secret(access_token.token, secret)
end

if token.new_record?
token.secret = access_token.secret
token.save
end

token
end

def build_user_from_token
Expand Down

0 comments on commit 8fc8197

Please sign in to comment.