2017-06-05 15:53:49 -04:00
|
|
|
import * as express from 'express'
|
2017-12-28 05:16:08 -05:00
|
|
|
import { isSignupAllowed } from '../../helpers/utils'
|
2017-05-15 16:22:03 -04:00
|
|
|
|
2018-01-03 05:10:40 -05:00
|
|
|
import { CONFIG, CONSTRAINTS_FIELDS } from '../../initializers'
|
2017-10-25 05:55:06 -04:00
|
|
|
import { asyncMiddleware } from '../../middlewares'
|
2017-06-17 05:28:11 -04:00
|
|
|
import { ServerConfig } from '../../../shared'
|
2017-05-15 16:22:03 -04:00
|
|
|
|
|
|
|
const configRouter = express.Router()
|
|
|
|
|
2017-10-25 05:55:06 -04:00
|
|
|
configRouter.get('/',
|
|
|
|
asyncMiddleware(getConfig)
|
|
|
|
)
|
2017-05-15 16:22:03 -04:00
|
|
|
|
2017-10-25 05:55:06 -04:00
|
|
|
async function getConfig (req: express.Request, res: express.Response, next: express.NextFunction) {
|
|
|
|
const allowed = await isSignupAllowed()
|
2017-07-25 14:17:28 -04:00
|
|
|
|
2017-10-25 05:55:06 -04:00
|
|
|
const enabledResolutions = Object.keys(CONFIG.TRANSCODING.RESOLUTIONS)
|
|
|
|
.filter(key => CONFIG.TRANSCODING.RESOLUTIONS[key] === true)
|
|
|
|
.map(r => parseInt(r, 10))
|
2017-10-19 11:33:32 -04:00
|
|
|
|
2017-10-25 05:55:06 -04:00
|
|
|
const json: ServerConfig = {
|
|
|
|
signup: {
|
|
|
|
allowed
|
|
|
|
},
|
|
|
|
transcoding: {
|
|
|
|
enabledResolutions
|
2018-01-03 05:10:40 -05:00
|
|
|
},
|
|
|
|
avatar: {
|
|
|
|
file: {
|
|
|
|
size: {
|
|
|
|
max: CONSTRAINTS_FIELDS.ACTORS.AVATAR.FILE_SIZE.max
|
|
|
|
},
|
|
|
|
extensions: CONSTRAINTS_FIELDS.ACTORS.AVATAR.EXTNAME
|
|
|
|
}
|
|
|
|
},
|
|
|
|
video: {
|
|
|
|
file: {
|
|
|
|
extensions: CONSTRAINTS_FIELDS.VIDEOS.EXTNAME
|
|
|
|
}
|
2017-05-15 16:22:03 -04:00
|
|
|
}
|
2017-10-25 05:55:06 -04:00
|
|
|
}
|
2017-10-19 11:33:32 -04:00
|
|
|
|
2017-10-25 05:55:06 -04:00
|
|
|
return res.json(json)
|
2017-05-15 16:22:03 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// ---------------------------------------------------------------------------
|
|
|
|
|
|
|
|
export {
|
|
|
|
configRouter
|
|
|
|
}
|