Files
overleaf-cep/services/web/app/views/layout-react.pug
Tim Down 290bf71659 Merge pull request #25788 from overleaf/td-layout-react
Use correct layout for React pages

GitOrigin-RevId: 0dbf3146273c0ac2f1549f67be374595e1b8403e
2025-05-23 08:05:10 +00:00

66 lines
2.4 KiB
Plaintext

//- This is used for pages that are migrated to Bootstrap 5 but don't use Bootstrap's own JS, instead using
//- react-bootstrap for all Bootstrap components
extends ./layout-base
include ./_mixins/formMessages
include ./_mixins/bootstrap_js
block entrypointVar
- entrypoint = 'marketing'
block isApplicationPageVar
- isApplicationPage = true
block append meta
- const canDisplayAdminMenu = hasAdminAccess()
- const canDisplayAdminRedirect = canRedirectToAdminDomain()
- const sessionUser = getSessionUser()
- const staffAccess = sessionUser?.staffAccess
- const canDisplaySplitTestMenu = hasFeature('saas') && (canDisplayAdminMenu || staffAccess?.splitTestMetrics || staffAccess?.splitTestManagement)
- const canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu
- const canDisplayScriptLogMenu = hasFeature('saas') && canDisplayAdminMenu
- const enableUpgradeButton = projectDashboardReact && usersBestSubscription && (usersBestSubscription.type === 'free' || usersBestSubscription.type === 'standalone-ai-add-on')
- const showSignUpLink = hasFeature('registration-page')
meta(name="ol-navbar" data-type="json" content={
customLogo: settings.nav.custom_logo,
title: nav.title,
canDisplayAdminMenu,
canDisplayAdminRedirect,
canDisplaySplitTestMenu,
canDisplaySurveyMenu,
canDisplayScriptLogMenu,
enableUpgradeButton,
suppressNavbarRight: !!suppressNavbarRight,
suppressNavContentLinks: !!suppressNavContentLinks,
showSubscriptionLink: nav.showSubscriptionLink,
showSignUpLink: showSignUpLink,
currentUrl: currentUrl,
sessionUser: sessionUser ? { email: sessionUser.email} : undefined,
adminUrl: settings.adminUrl,
items: cloneAndTranslateText(nav.header_extras)
})
meta(name="ol-footer" data-type="json" content={
showThinFooter: showThinFooter,
showPoweredBy: !hasFeature('saas') && !settings.nav.hide_powered_by,
subdomainLang: settings.i18n.subdomainLang,
translatedLanguages: settings.translatedLanguages,
leftItems: cloneAndTranslateText(settings.nav.left_footer),
rightItems: settings.nav.right_footer
})
block body
if (typeof suppressNavbar === "undefined")
include layout/navbar-marketing-react-bootstrap-5
block content
if (typeof suppressFooter === "undefined")
if showThinFooter
include layout/thin-footer-bootstrap-5
else
include layout/fat-footer-react-bootstrap-5
if (typeof suppressCookieBanner === "undefined")
include _cookie_banner