Sha256: be0686cafcab520af841c0fc63c4a7f35f9e04e1c1947302b03702fae0d1fde9
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
require 'pp' module Example class App < Sinatra::Base enable :sessions set :github_options, { :secret => ENV['GITHUB_CLIENT_SECRET'], :client_id => ENV['GITHUB_CLIENT_ID'], :scopes => 'user,offline_access,repo' # repo is need for org auth :\ } register Sinatra::Auth::Github helpers do def repos github_request("user/repos") end end get '/' do authenticate! "Hello There, #{github_user.name}!#{github_user.token}\n#{repos.inspect}" end get '/orgs/:id' do github_organization_authenticate!(params['id']) "Hello There, #{github_user.name}! You have access to the #{params['id']} organization." end get '/teams/:id' do github_team_authenticate!(params['id']) "Hello There, #{github_user.name}! You have access to the #{params['id']} team." end get '/logout' do logout! redirect '/' end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sinatra_auth_github-0.1.1 | spec/app.rb |
sinatra_auth_github-0.1.0 | spec/app.rb |