Module: WCC::Auth
- Defined in:
- lib/wcc/auth.rb,
lib/wcc/auth/devise.rb,
lib/wcc/auth/version.rb,
lib/wcc/auth/providers.rb,
lib/wcc/auth/access_level.rb
Defined Under Namespace
Modules: ControllerHelpers, Devise, Providers
Classes: AccessLevel, TieredAbility
Constant Summary
collapse
- SetupOAuth =
lambda { |env|
request = Rack::Request.new(env)
env['omniauth.strategy'].options[:client_id] = config.app_id
env['omniauth.strategy'].options[:client_secret] = config.app_secret
auth_params = config.authorize_params.merge(
request.params['authorize_params'] || {}
)
auth_params.each do |k, v|
env['omniauth.strategy'].options[:authorize_params][k] = v
end
}
- VERSION =
'0.9.0'
- ACCESS_LEVELS =
[
{ id: nil, name: "None", slug: "none", description: "no access", level: 0 },
{ id: 1, name: "Basic", slug: "basic", description: "read access", level: 1 },
{ id: 2, name: "Contribute", slug: "contribute", description: "read-write of data user owns", level: 2 },
{ id: 3, name: "Manage", slug: "manage", description: "read-write of other's data", level: 3 },
{ id: 4, name: "App Admin", slug: "appadmin", description: "read-write app configuration", level: 4 },
{ id: 5, name: "System Admin", slug: "sysadmin", description: "full access", level: 5 },
]
Class Method Summary
collapse
Class Method Details
.config ⇒ Object
20
21
22
|
# File 'lib/wcc/auth.rb', line 20
def self.config
@config ||= WCC::Auth::Config.new
end
|
.finalize ⇒ Object
24
25
26
|
# File 'lib/wcc/auth.rb', line 24
def self.finalize
finalize_callbacks.each(&:call)
end
|
.finalize_callbacks ⇒ Object
28
29
30
|
# File 'lib/wcc/auth.rb', line 28
def self.finalize_callbacks
@finalize_callbacks ||= []
end
|
.setup {|config| ... } ⇒ Object
15
16
17
18
|
# File 'lib/wcc/auth.rb', line 15
def self.setup
yield config
finalize
end
|