mirror of
https://github.com/Chocobozzz/PeerTube.git
synced 2025-10-03 17:59:37 +02:00
Begin to add avatar to actors
This commit is contained in:
parent
8b0d42ee37
commit
c5911fd347
41 changed files with 498 additions and 177 deletions
|
@ -1,8 +1,9 @@
|
|||
import * as express from 'express'
|
||||
import * as multer from 'multer'
|
||||
import { Model } from 'sequelize-typescript'
|
||||
import { ResultList } from '../../shared'
|
||||
import { VideoResolution } from '../../shared/models/videos'
|
||||
import { CONFIG, REMOTE_SCHEME } from '../initializers'
|
||||
import { CONFIG, REMOTE_SCHEME, VIDEO_MIMETYPE_EXT } from '../initializers'
|
||||
import { UserModel } from '../models/account/user'
|
||||
import { ActorModel } from '../models/activitypub/actor'
|
||||
import { ApplicationModel } from '../models/application/application'
|
||||
|
@ -26,6 +27,30 @@ function badRequest (req: express.Request, res: express.Response, next: express.
|
|||
return res.type('json').status(400).end()
|
||||
}
|
||||
|
||||
function createReqFiles (fieldName: string, storageDir: string, mimeTypes: { [ id: string ]: string }) {
|
||||
const storage = multer.diskStorage({
|
||||
destination: (req, file, cb) => {
|
||||
cb(null, storageDir)
|
||||
},
|
||||
|
||||
filename: async (req, file, cb) => {
|
||||
const extension = mimeTypes[file.mimetype]
|
||||
let randomString = ''
|
||||
|
||||
try {
|
||||
randomString = await generateRandomString(16)
|
||||
} catch (err) {
|
||||
logger.error('Cannot generate random string for file name.', err)
|
||||
randomString = 'fake-random-string'
|
||||
}
|
||||
|
||||
cb(null, randomString + extension)
|
||||
}
|
||||
})
|
||||
|
||||
return multer({ storage }).fields([{ name: fieldName, maxCount: 1 }])
|
||||
}
|
||||
|
||||
async function generateRandomString (size: number) {
|
||||
const raw = await pseudoRandomBytesPromise(size)
|
||||
|
||||
|
@ -122,5 +147,6 @@ export {
|
|||
resetSequelizeInstance,
|
||||
getServerActor,
|
||||
SortType,
|
||||
getHostWithPort
|
||||
getHostWithPort,
|
||||
createReqFiles
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue