import * as express from 'express'
import { CONFIG, FEEDS, ROUTE_CACHE_LIFETIME } from '../initializers/constants'
+import { THUMBNAILS_SIZE } from '../initializers'
import { asyncMiddleware, setDefaultSort, videoCommentsFeedsValidator, videoFeedsValidator, videosSortValidator } from '../middlewares'
import { VideoModel } from '../models/video/video'
import * as Feed from 'pfeed'
import { cacheRoute } from '../middlewares/cache'
import { VideoChannelModel } from '../models/video/video-channel'
import { VideoCommentModel } from '../models/video/video-comment'
+import { buildNSFWFilter } from '../helpers/express-utils'
const feedsRouter = express.Router()
// Adding video items to the feed, one at a time
comments.forEach(comment => {
+ const link = CONFIG.WEBSERVER.URL + '/videos/watch/' + comment.Video.uuid + ';threadId=' + comment.getThreadId()
+
feed.addItem({
title: `${comment.Video.name} - ${comment.Account.getDisplayName()}`,
id: comment.url,
- link: comment.url,
+ link,
content: comment.text,
author: [
{
const account: AccountModel = res.locals.account
const videoChannel: VideoChannelModel = res.locals.videoChannel
- const hideNSFW = CONFIG.INSTANCE.DEFAULT_NSFW_POLICY === 'do_not_list'
+ const nsfw = buildNSFWFilter(res, req.query.nsfw)
let name: string
let description: string
start,
count: FEEDS.COUNT,
sort: req.query.sort,
- hideNSFW,
+ includeLocalVideos: true,
+ nsfw,
filter: req.query.filter,
withFiles: true,
accountId: account ? account.id : null,
feed.addItem({
title: video.name,
id: video.url,
- link: video.url,
+ link: CONFIG.WEBSERVER.URL + '/videos/watch/' + video.uuid,
description: video.getTruncatedDescription(),
content: video.description,
author: [
date: video.publishedAt,
language: video.language,
nsfw: video.nsfw,
- torrent: torrents
+ torrent: torrents,
+ thumbnail: [
+ {
+ url: CONFIG.WEBSERVER.URL + video.getThumbnailStaticPath(),
+ height: THUMBNAILS_SIZE.height,
+ width: THUMBNAILS_SIZE.width
+ }
+ ]
})
})