Files
overleaf-cep/services/web/app/views/layout-base.pug
Mathias Jakobsen 26739294d5 Merge pull request #31941 from overleaf/mj-default-theme
[web] Change default data-theme attribute to light

GitOrigin-RevId: adabde890746da24728bd1cd47562eb769893ee0
2026-03-06 09:14:31 +00:00

129 lines
3.2 KiB
Plaintext

include ./_mixins/foot_scripts
doctype html
html(
lang=currentLngCode || 'en'
class=fixedSizeDocument ? 'fixed-size-document' : undefined
)
- metadata = metadata || {}
- let isWebsiteRedesign = false
- let isApplicationPage = false
- let enableIeeeBranding = true
block entrypointVar
block isApplicationPageVar
block vars
head
include ./_metadata.pug
//- Stylesheet
link(rel='stylesheet' href=buildCssPath() id='main-stylesheet')
block css
each file in entrypointStyles(entrypoint)
link(rel='stylesheet' href=file)
block _headLinks
if typeof suppressRelAlternateLinks == 'undefined'
if settings.i18n.subdomainLang
each subdomainDetails in settings.i18n.subdomainLang
if !subdomainDetails.hide
link(
rel='alternate'
href=subdomainDetails.url + currentUrl
hreflang=subdomainDetails.lngCode
)
if entrypoint !== 'marketing'
link(
rel='preload'
href=buildJsPath(currentLngCode + '-json.js')
as='script'
nonce=scriptNonce
)
//- Scripts
if typeof suppressAnalytics == 'undefined'
include _google_analytics
block meta
meta(name='ol-csrfToken' content=csrfToken)
//- Configure dynamically loaded assets (via webpack) to be downloaded from CDN
//- See: https://webpack.js.org/guides/public-path/#on-the-fly
meta(name='ol-baseAssetPath' content=buildBaseAssetPath())
meta(name='ol-mathJaxPath' content=mathJaxPath)
meta(name='ol-dictionariesRoot' content=dictionariesRoot)
meta(name='ol-usersEmail' content=getUserEmail())
meta(name='ol-ab' data-type='json' content={})
meta(name='ol-user_id' content=getLoggedInUserId())
//- Internationalisation settings
meta(
name='ol-i18n'
data-type='json'
content={
currentLangCode: currentLngCode,
}
)
//- Expose some settings globally to the frontend
meta(name='ol-ExposedSettings' data-type='json' content=ExposedSettings)
meta(
name='ol-splitTestVariants'
data-type='json'
content=splitTestVariants || {}
)
meta(name='ol-splitTestInfo' data-type='json' content=splitTestInfo || {})
if typeof settings.algolia != 'undefined'
meta(
name='ol-algolia'
data-type='json'
content={
appId: settings.algolia.app_id,
apiKey: settings.algolia.read_only_api_key,
indexes: settings.algolia.indexes,
}
)
meta(
name='ol-isManagedAccount'
data-type='boolean'
content=isManagedAccount
)
each restriction in userRestrictions || []
meta(name='ol-cannot-' + restriction data-type='boolean' content)
block head-scripts
body(
class={
'thin-footer': showThinFooter,
'website-redesign': isWebsiteRedesign === true || websiteRedesignOverride,
'application-page': isApplicationPage,
}
data-theme='light'
)
if settings.recaptcha && settings.recaptcha.siteKeyV3
script(
type='text/javascript'
nonce=scriptNonce
src='https://www.recaptcha.net/recaptcha/api.js?render=' + settings.recaptcha.siteKeyV3
defer=deferScripts
)
if typeof suppressSkipToContent == 'undefined'
a(class='skip-to-content' href='#main-content') #{translate('skip_to_content')}
block body
if settings.devToolbar.enabled
#dev-toolbar
block foot-scripts
+foot-scripts
include _customer_io