class OmniAuth::Strategies::Hipchat

Public Instance Methods

basic_auth_header() click to toggle source
# File lib/omniauth/strategies/hipchat.rb, line 68
def basic_auth_header
  "Basic " + Base64.strict_encode64("#{options[:client_id]}:#{options[:client_secret]}")
end
build_access_token() click to toggle source
Calls superclass method
# File lib/omniauth/strategies/hipchat.rb, line 63
def build_access_token
  options.token_params.merge!(:headers => {'Authorization' => basic_auth_header })
  super
end
group_info() click to toggle source
# File lib/omniauth/strategies/hipchat.rb, line 58
def group_info
  return {} unless group_info_allowed?
  @group_info ||= access_token.get("/v2/group/#{access_token['group_id']}").parsed
end
group_info_allowed?() click to toggle source
# File lib/omniauth/strategies/hipchat.rb, line 72
def group_info_allowed?
  return false unless options['scope']
  group_info_scopes = ['view_room']
  scopes = options['scope'].split(' ')
  (scopes & group_info_scopes).any?
end
raw_info() click to toggle source
# File lib/omniauth/strategies/hipchat.rb, line 49
def raw_info
  @raw_info ||= access_token.get("/v2/oauth/token/#{access_token.token}").parsed
end
user_info() click to toggle source
# File lib/omniauth/strategies/hipchat.rb, line 53
def user_info
  return {} unless group_info_allowed?
  @user_info ||= access_token.get("/v2/user/#{raw_info['owner']['id']}").parsed
end