Sha256: 13bc62db9b6150a66727449d66b254a302614bdd01034925469090ae7d99f6c9
Contents?: true
Size: 1.12 KB
Versions: 1
Compression:
Stored size: 1.12 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 :provider_ignores_state, false 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 def query_string "" 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.1.3 | lib/omniauth/strategies/canvas.rb |