diff options
Diffstat (limited to 'server/server/middlewares/validators/shared/abuses.ts')
-rw-r--r-- | server/server/middlewares/validators/shared/abuses.ts | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/server/server/middlewares/validators/shared/abuses.ts b/server/server/middlewares/validators/shared/abuses.ts new file mode 100644 index 000000000..dfe18fb4f --- /dev/null +++ b/server/server/middlewares/validators/shared/abuses.ts | |||
@@ -0,0 +1,26 @@ | |||
1 | import { Response } from 'express' | ||
2 | import { AbuseModel } from '@server/models/abuse/abuse.js' | ||
3 | import { HttpStatusCode } from '@peertube/peertube-models' | ||
4 | import { forceNumber } from '@peertube/peertube-core-utils' | ||
5 | |||
6 | async function doesAbuseExist (abuseId: number | string, res: Response) { | ||
7 | const abuse = await AbuseModel.loadByIdWithReporter(forceNumber(abuseId)) | ||
8 | |||
9 | if (!abuse) { | ||
10 | res.fail({ | ||
11 | status: HttpStatusCode.NOT_FOUND_404, | ||
12 | message: 'Abuse not found' | ||
13 | }) | ||
14 | |||
15 | return false | ||
16 | } | ||
17 | |||
18 | res.locals.abuse = abuse | ||
19 | return true | ||
20 | } | ||
21 | |||
22 | // --------------------------------------------------------------------------- | ||
23 | |||
24 | export { | ||
25 | doesAbuseExist | ||
26 | } | ||