diff options
Diffstat (limited to 'app/controllers/home_controller.rb')
-rw-r--r-- | app/controllers/home_controller.rb | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb index 29478209d..450f92bd4 100644 --- a/app/controllers/home_controller.rb +++ b/app/controllers/home_controller.rb @@ -2,8 +2,10 @@ class HomeController < ApplicationController before_action :redirect_unauthenticated_to_permalinks! + before_action :authenticate_user! + + before_action :set_pack before_action :set_referrer_policy_header - before_action :set_instance_presenter def index @body_classes = 'app-body' @@ -14,16 +16,24 @@ class HomeController < ApplicationController def redirect_unauthenticated_to_permalinks! return if user_signed_in? - redirect_path = PermalinkRedirector.new(request.path).redirect_path + redirect_to(PermalinkRedirector.new(request.path).redirect_path || default_redirect_path) + end - redirect_to(redirect_path) if redirect_path.present? + def set_pack + use_pack 'home' end - def set_referrer_policy_header - response.headers['Referrer-Policy'] = 'origin' + def default_redirect_path + if request.path.start_with?('/web') || whitelist_mode? + new_user_session_path + elsif single_user_mode? + short_account_path(Account.local.without_suspended.where('id > 0').first) + else + about_path + end end - def set_instance_presenter - @instance_presenter = InstancePresenter.new + def set_referrer_policy_header + response.headers['Referrer-Policy'] = 'origin' end end |