diff --git a/app/controllers/public/api/v1/portals_controller.rb b/app/controllers/public/api/v1/portals_controller.rb index c292198a6..98c54ca35 100644 --- a/app/controllers/public/api/v1/portals_controller.rb +++ b/app/controllers/public/api/v1/portals_controller.rb @@ -1,5 +1,6 @@ class Public::Api::V1::PortalsController < PublicController before_action :ensure_custom_domain_request, only: [:show] + before_action :redirect_to_portal_with_locale, only: [:show] before_action :portal layout 'portal' @@ -9,5 +10,12 @@ class Public::Api::V1::PortalsController < PublicController def portal @portal ||= Portal.find_by!(slug: params[:slug], archived: false) + @locale = params[:locale] || @portal.default_locale + end + + def redirect_to_portal_with_locale + return if params[:locale].present? + + redirect_to "/hc/#{@portal.slug}/#{@portal.default_locale}" end end diff --git a/app/views/public/api/v1/portals/show.html.erb b/app/views/public/api/v1/portals/show.html.erb index b6a8bc4a1..c46a286d9 100644 --- a/app/views/public/api/v1/portals/show.html.erb +++ b/app/views/public/api/v1/portals/show.html.erb @@ -1,7 +1,7 @@ <%= render "public/api/v1/portals/hero", portal: @portal %>