aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/sessions_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/sessions_controller.rb')
-rw-r--r--app/controllers/sessions_controller.rb16
1 files changed, 8 insertions, 8 deletions
diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb
index f5d609c..335d84e 100644
--- a/app/controllers/sessions_controller.rb
+++ b/app/controllers/sessions_controller.rb
@@ -5,11 +5,6 @@ class SessionsController < ApplicationController
account = Account.register(user_id: auth.uid,
oauth_token: auth.credentials.token,
oauth_token_secret: auth.credentials.secret)
- begin
- WorkerManager.update_account(account)
- rescue Aclog::Exceptions::WorkerConnectionError
- end
-
User.create_or_update_from_json(
{ id: account.user_id,
screen_name: auth.extra.raw_info.screen_name,
@@ -17,13 +12,18 @@ class SessionsController < ApplicationController
profile_image_url_https: auth.extra.raw_info.profile_image_url_https,
protected: auth.extra.raw_info.protected })
+ begin
+ WorkerManager.update_account(account)
+ rescue Aclog::Exceptions::WorkerConnectionError
+ end
+
session[:user_id] = account.user_id
to = request.env["omniauth.params"]["redirect_after_login"].to_s
- if to == "/" || to[0] != "/" || to.include?("//")
- redirect_to user_path(auth.extra.raw_info.screen_name)
- else
+ if safe_redirect?(to)
redirect_to to
+ else
+ redirect_to user_path(auth.extra.raw_info.screen_name)
end
end