X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Fbots.ts;h=2a8d6863a08672bc116a82773e262020ea7820a2;hb=87a0cac618c8ed4a09408273d0f5a468530e8062;hp=93aa0cf3080bd9912ad5566f86cbc6870a1ace0e;hpb=20bafcb61bee2a9a10a500908850c9a7d5e3c8c5;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/bots.ts b/server/controllers/bots.ts index 93aa0cf30..2a8d6863a 100644 --- a/server/controllers/bots.ts +++ b/server/controllers/bots.ts @@ -1,13 +1,14 @@ -import * as express from 'express' -import { asyncMiddleware } from '../middlewares' -import { ROUTE_CACHE_LIFETIME, WEBSERVER } from '../initializers/constants' +import { getServerActor } from '@server/models/application/application' +import express from 'express' +import { truncate } from 'lodash' import { SitemapStream, streamToPromise } from 'sitemap' +import { buildNSFWFilter } from '../helpers/express-utils' +import { ROUTE_CACHE_LIFETIME, WEBSERVER } from '../initializers/constants' +import { asyncMiddleware } from '../middlewares' +import { cacheRoute } from '../middlewares/cache/cache' +import { AccountModel } from '../models/account/account' import { VideoModel } from '../models/video/video' import { VideoChannelModel } from '../models/video/video-channel' -import { AccountModel } from '../models/account/account' -import { cacheRoute } from '../middlewares/cache/cache' -import { buildNSFWFilter } from '../helpers/express-utils' -import { truncate } from 'lodash' const botsRouter = express.Router() @@ -63,25 +64,29 @@ async function getSitemapAccountUrls () { } async function getSitemapLocalVideoUrls () { + const serverActor = await getServerActor() + const { data } = await VideoModel.listForApi({ start: 0, count: undefined, sort: 'createdAt', - includeLocalVideos: true, + displayOnlyForFollower: { + actorId: serverActor.id, + orLocalVideos: true + }, + isLocal: true, nsfw: buildNSFWFilter(), - filter: 'local', - withFiles: false, countVideos: false }) return data.map(v => ({ - url: WEBSERVER.URL + '/w/' + v.uuid, + url: WEBSERVER.URL + v.getWatchStaticPath(), video: [ { title: v.name, // Sitemap description should be < 2000 characters description: truncate(v.description || v.name, { length: 2000, omission: '...' }), - player_loc: WEBSERVER.URL + '/videos/embed/' + v.uuid, + player_loc: WEBSERVER.URL + v.getEmbedStaticPath(), thumbnail_loc: WEBSERVER.URL + v.getMiniatureStaticPath() } ]