|
|
@@ -6,7 +6,12 @@ require_relative '../lib/auth'
|
|
6
|
6
|
require_relative '../lib/search'
|
|
7
|
7
|
|
|
8
|
8
|
class VLVSearch < Sinatra::Base
|
|
9
|
|
- enable :sessions
|
|
|
9
|
+ set :sessions,
|
|
|
10
|
+ key: ENV['SESSION_KEY'],
|
|
|
11
|
+ domain: ENV['SESSION_DOMAIN'],
|
|
|
12
|
+ path: '/',
|
|
|
13
|
+ expire_after: 14_400,
|
|
|
14
|
+ secret: ENV['SESSION_SECRET']
|
|
10
|
15
|
|
|
11
|
16
|
get '/' do
|
|
12
|
17
|
redirect '/login' unless signed_in?
|
|
|
@@ -44,13 +49,13 @@ class VLVSearch < Sinatra::Base
|
|
44
|
49
|
erb :login,
|
|
45
|
50
|
{ layout: :layout, locals: { error_message: 'Invalid credentials' } }
|
|
46
|
51
|
else
|
|
47
|
|
- session[:user_id] = username
|
|
|
52
|
+ session['user_id'] = username
|
|
48
|
53
|
redirect '/'
|
|
49
|
54
|
end
|
|
50
|
55
|
end
|
|
51
|
56
|
|
|
52
|
57
|
post '/logout' do
|
|
53
|
|
- session[:user_id] = nil
|
|
|
58
|
+ session['user_id'] = nil
|
|
54
|
59
|
redirect '/'
|
|
55
|
60
|
end
|
|
56
|
61
|
|
|
|
@@ -72,11 +77,11 @@ class VLVSearch < Sinatra::Base
|
|
72
|
77
|
end
|
|
73
|
78
|
|
|
74
|
79
|
def current_user
|
|
75
|
|
- session[:user_id]
|
|
|
80
|
+ session['user_id']
|
|
76
|
81
|
end
|
|
77
|
82
|
|
|
78
|
83
|
def signed_in?
|
|
79
|
|
- !!session[:user_id]
|
|
|
84
|
+ !!session['user_id']
|
|
80
|
85
|
end
|
|
81
|
86
|
end
|
|
82
|
87
|
|