X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmiddlewares%2Fvalidators%2Fblocklist.ts;h=b7749e204c8bac8bc6ba164a78876ddcc04bb36f;hb=2760b454a761f6af3138b2fb5f34340772ab0d1e;hp=b2183437c8bf60cf90aa14b7aa508f95dd11f382;hpb=62068f4153cb1e67fe30a7f92947c3f2ec058c73;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/middlewares/validators/blocklist.ts b/server/middlewares/validators/blocklist.ts index b2183437c..b7749e204 100644 --- a/server/middlewares/validators/blocklist.ts +++ b/server/middlewares/validators/blocklist.ts @@ -1,14 +1,14 @@ +import express from 'express' import { body, param } from 'express-validator' -import * as express from 'express' +import { getServerActor } from '@server/models/application/application' +import { HttpStatusCode } from '../../../shared/models/http/http-error-codes' +import { isHostValid } from '../../helpers/custom-validators/servers' import { logger } from '../../helpers/logger' -import { areValidationErrors } from './utils' +import { WEBSERVER } from '../../initializers/constants' import { AccountBlocklistModel } from '../../models/account/account-blocklist' -import { isHostValid } from '../../helpers/custom-validators/servers' -import { ServerBlocklistModel } from '../../models/server/server-blocklist' import { ServerModel } from '../../models/server/server' -import { getServerActor } from '../../helpers/utils' -import { WEBSERVER } from '../../initializers/constants' -import { doesAccountNameWithHostExist } from '../../helpers/middlewares' +import { ServerBlocklistModel } from '../../models/server/server-blocklist' +import { areValidationErrors, doesAccountNameWithHostExist } from './shared' const blockAccountValidator = [ body('accountName').exists().withMessage('Should have an account name with host'), @@ -23,10 +23,10 @@ const blockAccountValidator = [ const accountToBlock = res.locals.account if (user.Account.id === accountToBlock.id) { - res.status(409) - .send({ error: 'You cannot block yourself.' }) - .end() - + res.fail({ + status: HttpStatusCode.CONFLICT_409, + message: 'You cannot block yourself.' + }) return } @@ -79,15 +79,13 @@ const blockServerValidator = [ const host: string = req.body.host if (host === WEBSERVER.HOST) { - return res.status(409) - .send({ error: 'You cannot block your own server.' }) - .end() + return res.fail({ + status: HttpStatusCode.CONFLICT_409, + message: 'You cannot block your own server.' + }) } - let server = await ServerModel.loadByHost(host) - if (!server) { - server = await ServerModel.create({ host }) - } + const server = await ServerModel.loadOrCreateByHost(host) res.locals.server = server @@ -141,29 +139,27 @@ export { async function doesUnblockAccountExist (accountId: number, targetAccountId: number, res: express.Response) { const accountBlock = await AccountBlocklistModel.loadByAccountAndTarget(accountId, targetAccountId) if (!accountBlock) { - res.status(404) - .send({ error: 'Account block entry not found.' }) - .end() - + res.fail({ + status: HttpStatusCode.NOT_FOUND_404, + message: 'Account block entry not found.' + }) return false } res.locals.accountBlock = accountBlock - return true } async function doesUnblockServerExist (accountId: number, host: string, res: express.Response) { const serverBlock = await ServerBlocklistModel.loadByAccountAndHost(accountId, host) if (!serverBlock) { - res.status(404) - .send({ error: 'Server block entry not found.' }) - .end() - + res.fail({ + status: HttpStatusCode.NOT_FOUND_404, + message: 'Server block entry not found.' + }) return false } res.locals.serverBlock = serverBlock - return true }