Class: OpenSesame::Github::Strategy

Inherits:
Warden::Strategies::Base
  • Object
show all
Defined in:
lib/opensesame/github/strategy.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#organizationObject



26
27
28
# File 'lib/opensesame/github/strategy.rb', line 26

def organization
  @organization ||= OpenSesame::Github.organization
end

Instance Method Details

#authenticate!Object



14
15
16
17
18
19
20
# File 'lib/opensesame/github/strategy.rb', line 14

def authenticate!
  if team_member = organization.find_team_member(omniauth["uid"])
    success! team_member
  else
    fail 'Sorry, you do not have access'
  end
end

#omniauthObject



22
23
24
# File 'lib/opensesame/github/strategy.rb', line 22

def omniauth
  request.env['omniauth.auth']
end

#valid?Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/opensesame/github/strategy.rb', line 10

def valid?
  omniauth && omniauth["provider"] == "github"
end