Sha256: 44d35a496033fe1a28ff3fdd3e2effbbb3f023d0c31b3aa4b894b9caa0d26b96
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
require "omniauth-oauth2" module OmniAuth module Strategies class Canvas < OmniAuth::Strategies::OAuth2 option :name, "canvas" option :client_options, { :site => "https://canvas.instructure.com", :authorize_url => "/login/oauth2/auth", :token_url => "/login/oauth2/token" } option :token_params, { :parse => :json } uid do access_token['user']['id'] end info do { 'name' => raw_info['name'], 'email' => raw_info['primary_email'], 'bio' => raw_info['bio'], 'title' => raw_info['title'], 'nickname' => raw_info['login_id'], 'active_avatar' => raw_info['avatar_url'], 'url' => access_token.client.site } end extra do { :raw_info => raw_info } end def raw_info @raw_info ||= access_token.get("/api/v1/users/#{access_token['user']['id']}/profile").parsed end end end end OmniAuth.config.add_camelization 'canvas', 'Canvas'
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
omniauth-canvas-0.0.3 | lib/omniauth/strategies/canvas.rb |