Class: RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument
- Inherits:
-
EmailAuthenticationDocument
- Object
- RubyApp::Element
- RubyApp::Elements::Mobile::Document
- AuthenticationDocument
- AuthenticationDocument
- EmailAuthenticationDocument
- RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument
- Defined in:
- lib/ruby_app/elements/mobile/documents/authentication/o_auth/git_hub_authentication_document.rb
Instance Attribute Summary
Attributes inherited from RubyApp::Elements::Mobile::Document
#links, #metadata, #pages, #scripts, #stylesheets
Attributes inherited from RubyApp::Element
Instance Method Summary collapse
- #create_identity_from_token(token) ⇒ Object
-
#initialize(access_key = ENV['GITHUB_ACCESS_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.access_key, secret_key = ENV['GITHUB_SECRET_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.secret_key, scopes = [], options = {}) ⇒ GitHubAuthenticationDocument
constructor
A new instance of GitHubAuthenticationDocument.
Methods inherited from EmailAuthenticationDocument
Methods inherited from AuthenticationDocument
Methods inherited from RubyApp::Elements::Mobile::Document
Methods inherited from RubyApp::Element
Methods included from Mixins::ConfigurationMixin
Methods included from Mixins::TranslateMixin
Methods included from Mixins::TemplateMixin
#exclude_parent_template, #exclude_parent_template?, #get_cache, #get_default_template, #get_template, #get_template_name, #get_templates, #template_path
Methods included from Mixins::RenderMixin
#content_for, #get_cache, #get_default_template, #get_templates, #render
Constructor Details
#initialize(access_key = ENV['GITHUB_ACCESS_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.access_key, secret_key = ENV['GITHUB_SECRET_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.secret_key, scopes = [], options = {}) ⇒ GitHubAuthenticationDocument
Returns a new instance of GitHubAuthenticationDocument.
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/ruby_app/elements/mobile/documents/authentication/o_auth/git_hub_authentication_document.rb', line 18 def initialize(access_key = ENV['GITHUB_ACCESS_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.access_key, secret_key = ENV['GITHUB_SECRET_KEY'] || RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.secret_key, scopes = [], = {}) _scopes = scopes.is_a?(Array) ? ( ['user'] + scopes ) : ( "user,#{scopes}") = {:site => RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.url, :authorize_url => RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration., :token_url => RubyApp::Elements::Mobile::Documents::Authentication::OAuth::GitHubAuthenticationDocument.configuration.access_token_url}.merge() super(access_key, secret_key, _scopes, ) end |
Instance Method Details
#create_identity_from_token(token) ⇒ Object
29 30 31 32 33 |
# File 'lib/ruby_app/elements/mobile/documents/authentication/o_auth/git_hub_authentication_document.rb', line 29 def create_identity_from_token(token) user = JSON.parse(token.get('/user').body) # RubyApp::Log.debug("GITHUB user=#{user.inspect}") return self.create_identity_from_email(user['email']) end |