FILES_CONTENT_HASH
} from '../initializers/constants'
import { join } from 'path'
-import { escapeHTML, sha256 } from '../helpers/core-utils'
+import { escapeHTML, isTestInstance, sha256 } from '../helpers/core-utils'
import { VideoModel } from '../models/video/video'
import { VideoPlaylistModel } from '../models/video/video-playlist'
import validator from 'validator'
numberOfItems: number
}
+ siteName: string
title: string
url: string
description: string
const url = WEBSERVER.URL + video.getWatchStaticPath()
const title = escapeHTML(video.name)
+ const siteName = escapeHTML(CONFIG.INSTANCE.NAME)
const description = escapeHTML(video.description)
const image = {
const twitterCard = CONFIG.SERVICES.TWITTER.WHITELISTED ? 'player' : 'summary_large_image'
const schemaType = 'VideoObject'
- customHtml = ClientHtml.addTags(customHtml, { url, title, description, image, embed, ogType, twitterCard, schemaType })
+ customHtml = ClientHtml.addTags(customHtml, { url, siteName, title, description, image, embed, ogType, twitterCard, schemaType })
return customHtml
}
const url = videoPlaylist.getWatchUrl()
const title = escapeHTML(videoPlaylist.name)
+ const siteName = escapeHTML(CONFIG.INSTANCE.NAME)
const description = escapeHTML(videoPlaylist.description)
const image = {
const twitterCard = CONFIG.SERVICES.TWITTER.WHITELISTED ? 'player' : 'summary'
const schemaType = 'ItemList'
- customHtml = ClientHtml.addTags(customHtml, { url, embed, title, description, image, list, ogType, twitterCard, schemaType })
+ customHtml = ClientHtml.addTags(customHtml, { url, siteName, embed, title, description, image, list, ogType, twitterCard, schemaType })
return customHtml
}
static async getEmbedHTML () {
const path = ClientHtml.getEmbedPath()
- if (ClientHtml.htmlCache[path]) return ClientHtml.htmlCache[path]
+ if (!isTestInstance() && ClientHtml.htmlCache[path]) return ClientHtml.htmlCache[path]
const buffer = await readFile(path)
customHtml = ClientHtml.addDescriptionTag(customHtml, escapeHTML(entity.description))
const url = entity.Actor.url
+ const siteName = escapeHTML(CONFIG.INSTANCE.NAME)
const title = escapeHTML(entity.getDisplayName())
const description = escapeHTML(entity.description)
const twitterCard = 'summary'
const schemaType = 'ProfilePage'
- customHtml = ClientHtml.addTags(customHtml, { url, title, description, image, ogType, twitterCard, schemaType })
+ customHtml = ClientHtml.addTags(customHtml, { url, title, siteName, description, image, ogType, twitterCard, schemaType })
return customHtml
}
private static async getIndexHTML (req: express.Request, res: express.Response, paramLang?: string) {
const path = ClientHtml.getIndexPath(req, res, paramLang)
- if (ClientHtml.htmlCache[path]) return ClientHtml.htmlCache[path]
+ if (!isTestInstance() && ClientHtml.htmlCache[path]) return ClientHtml.htmlCache[path]
const buffer = await readFile(path)
private static generateOpenGraphMetaTags (tags: Tags) {
const metaTags = {
'og:type': tags.ogType,
+ 'og:site_name': tags.siteName,
'og:title': tags.title,
'og:image': tags.image.url
}