OmniAuth 1.0 custom strategy
require 'omniauth-oauth2'
module OmniAuth
module Strategies
class Copirite < OmniAuth::Strategies::OAuth2
option :name, "copirite"
option :client_options, {
:site => CUSTOM_PROVIDER_URL,
:authorize_url => "#{CUSTOM_PROVIDER_URL}/auth/copirite/authorize",
:access_token_url => "#{CUSTOM_PROVIDER_URL}/auth/copirite/access_token"
}
uid { raw_info['id'] }
info do
{
'name' => raw_info['name'],
'email' => raw_info['email']
}
end
extra do
{
'raw_info' => raw_info
}
end
def raw_info
@raw_info ||= access_token.get('/me').parsed
end
end
end
end