32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
# File 'lib/sinatra/rider/authentication.rb', line 32
def self.registered(app)
app.register Sinatra::Warden
app.helpers Sinatra::Rider::AuthHelpers
app.use Rack::Session::Cookie, secret: ENV['SESSION_SECRET'] || "I'm not a businessman. I'm a business, man."
app.use ::Warden::Manager do |manager|
manager.default_strategies :password
manager.failure_app = app
end
app.set :auth_template_renderer, :erb
app.set :auth_success_path, '/'
app.set :auth_failure_path, '/login'
app.get '/signup' do
erb :signup
end
app.post '/signup' do
auth_class = defined?(User) ? User : Sinatra::Rider::User
auth_class.signup(params)
env['warden'].authenticate!
redirect '/'
end
app.get '/login' do
erb :login
end
app.post '/login' do
env['warden'].authenticate!
end
app.get '/logout' do
env['warden'].logout
end
end
|