overleaf/services/web/app/views/_metadata.pug
Jessica Lawshe bfe06015c8 Merge pull request #2913 from overleaf/jel-cms-fields-check
Add fields check for CMS images

GitOrigin-RevId: 53d525ea9861cb8d025920c535054ced6886ca72
2020-06-19 02:10:15 +00:00

115 lines
4.8 KiB
Text

//- Title
-if (metadata && metadata.title)
title= metadata.title + ' - ' + settings.appName + ', ' + translate("online_latex_editor")
meta(name="twitter:title", content=metadata.title)
meta(name="og:title", content=metadata.title)
-else if (typeof(title) == "undefined")
title= settings.appName + ', '+ translate("online_latex_editor")
meta(name="twitter:title", content=settings.appName + ', '+ translate("online_latex_editor"))
meta(name="og:title", content=settings.appName + ', '+ translate("online_latex_editor"))
-else
title= translate(title) + ' - ' + settings.appName + ', ' + translate("online_latex_editor")
//- to do - not translate?
meta(name="twitter:title", content=translate(title))
meta(name="og:title", content=translate(title))
//- Description
-if (metadata && metadata.description)
meta(name="description" , content=metadata.description)
meta(itemprop="description" , content=metadata.description)
//-twitter and og descriptions handeled in their sections below
-else
meta(name="description", content=translate("site_description"))
meta(itemprop="description", content=translate("site_description"))
//- Image
-if (metadata && metadata.image && metadata.image.fields)
//- from the CMS
meta(itemprop="image", content=metadata.image.fields.file.url)
meta(name="image", content=metadata.image.fields.file.url)
-else if (metadata && metadata.image_src)
//- pages with custom metadata images, metadata.image_src is the full image URL
meta(itemprop="image", content=metadata.image_src)
meta(name="image", content=metadata.image_src)
-else if (settings.overleaf)
//- the default image for Overleaf
meta(itemprop="image", content=buildImgPath('ol-brand/overleaf_og_logo.png'))
meta(name="image", content=buildImgPath('ol-brand/overleaf_og_logo.png'))
-else
//- the default image for ShareLaTeX
meta(itemprop="image", content='/touch-icon-192x192.png')
meta(name="image", content='/touch-icon-192x192.png')
//- Keywords
-if (metadata && metadata.keywords)
meta(name="keywords" content=metadata.keywords)
//- Misc
meta(itemprop="name", content=settings.appName + ", the Online LaTeX Editor")
-if (metadata && metadata.robotsNoindexNofollow)
meta(name="robots" content="noindex, nofollow")
//- Twitter
meta(name="twitter:card", content=metadata && metadata.twitterCardType ? metadata.twitterCardType : 'summary')
-if (settings.social && settings.social.twitter && settings.social.twitter.handle)
meta(name="twitter:site", content="@" + settings.social.twitter.handle)
-if (metadata && metadata.twitterDescription)
meta(name="twitter:description", content=metadata.twitterDescription)
- else
meta(name="twitter:description", content=translate("site_description"))
-if (metadata && metadata.twitterImage && metadata.twitterImage.fields)
//- from the CMS
meta(name="twitter:image", content=metadata.twitterImage.fields.file.url)
meta(name="twitter:image:alt", content=metadata.twitterImage.fields.title)
-else if (settings.overleaf)
//- the default image for Overleaf
meta(name="twitter:image", content=buildImgPath('ol-brand/overleaf_og_logo.png'))
-else
//- the default image for ShareLaTeX
meta(name="twitter:image", content='/touch-icon-192x192.png')
//- Open Graph
//- to do - add og:url
-if (settings.social && settings.social.facebook && settings.social.facebook.appId)
meta(property="fb:app_id", content=settings.social.facebook.appId)
-if (metadata && metadata.openGraphDescription)
meta(property="og:description", content=metadata.openGraphDescription)
-else
meta(property="og:description", content=translate("site_description"))
-if (metadata && metadata.openGraphImage && metadata.openGraphImage.fields)
//- from the CMS
meta(property="og:image", content=metadata.openGraphImage.fields.file.url)
-else if (settings.overleaf)
//- the default image for Overleaf
meta(property="og:image", content=buildImgPath('ol-brand/overleaf_og_logo.png'))
-else
//- the default image for ShareLaTeX
meta(property="og:image", content='/touch-icon-192x192.png')
-if (metadata && metadata.openGraphType)
meta(property="og:type", metadata.openGraphType)
-else
meta(property="og:type", content="website")
- if (metadata && metadata.openGraphVideo)
//- from the CMS
meta(property="og:video", content=metadata.openGraphVideo)
//- Viewport
if metadata && metadata.viewport
meta(name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes")
//- Noindex
if settings.robotsNoindex
meta(name="robots" content="noindex")
//- Icons
link(rel="icon", href="/" + settings.brandPrefix + "favicon.ico")
link(rel="icon", sizes="192x192", href="/" + settings.brandPrefix + "touch-icon-192x192.png")
link(rel="apple-touch-icon-precomposed", href="/" + settings.brandPrefix + "apple-touch-icon-precomposed.png")
link(rel="mask-icon", href="/" + settings.brandPrefix + "mask-favicon.svg", color=settings.brandPrefix === 'sl-' ? "#a93529" : "#138A07")