diff --git a/app/controllers/public/api/v1/portals/base_controller.rb b/app/controllers/public/api/v1/portals/base_controller.rb index c5297e6e4..851b8c549 100644 --- a/app/controllers/public/api/v1/portals/base_controller.rb +++ b/app/controllers/public/api/v1/portals/base_controller.rb @@ -1,8 +1,13 @@ class Public::Api::V1::Portals::BaseController < PublicController + before_action :show_plain_layout around_action :set_locale private + def show_plain_layout + @is_plain_layout_enabled = params[:show_plain_layout] == 'true' + end + def set_locale(&) switch_locale_with_portal(&) if params[:locale].present? switch_locale_with_article(&) if params[:article_slug].present? diff --git a/app/javascript/portal/portalHelpers.js b/app/javascript/portal/portalHelpers.js index b5f892398..e0513d339 100644 --- a/app/javascript/portal/portalHelpers.js +++ b/app/javascript/portal/portalHelpers.js @@ -57,10 +57,25 @@ export const InitializationHelpers = { } }, + appendPlainParamToURLs: () => { + document.getElementsByTagName('a').forEach(aTagElement => { + if (aTagElement.href && aTagElement.href.includes('/hc/')) { + aTagElement.setAttribute( + 'href', + aTagElement.href + '?show_plain_layout=true' + ); + } + }); + }, + initialize: () => { - InitializationHelpers.navigateToLocalePage(); - InitializationHelpers.initalizeSearch(); - InitializationHelpers.initializeTableOfContents(); + if (window.portalConfig.isPlainLayoutEnabled === 'true') { + InitializationHelpers.appendPlainParamToURLs(); + } else { + InitializationHelpers.navigateToLocalePage(); + InitializationHelpers.initalizeSearch(); + InitializationHelpers.initializeTableOfContents(); + } }, onLoad: () => { diff --git a/app/views/layouts/portal.html.erb b/app/views/layouts/portal.html.erb index 8f1dda7ae..763222d81 100644 --- a/app/views/layouts/portal.html.erb +++ b/app/views/layouts/portal.html.erb @@ -30,9 +30,13 @@ By default, it renders:
+ <%= I18n.t('public_portal.common.last_updated_on', last_updated_on: article.updated_at.strftime("%b %d, %Y")) %> +
- <%= I18n.t('public_portal.common.last_updated_on', last_updated_on: @article.updated_at.strftime("%b %d, %Y")) %> -