]>
Commit | Line | Data |
---|---|---|
41fb13c3 | 1 | import express from 'express' |
edbc9325 C |
2 | import { AbuseModel } from '@server/models/abuse/abuse' |
3 | import { | |
4 | abuseListForUserValidator, | |
5 | abusesSortValidator, | |
6 | asyncMiddleware, | |
7 | authenticate, | |
8 | paginationValidator, | |
9 | setDefaultPagination, | |
10 | setDefaultSort | |
11 | } from '../../../middlewares' | |
12 | ||
13 | const myAbusesRouter = express.Router() | |
14 | ||
15 | myAbusesRouter.get('/me/abuses', | |
16 | authenticate, | |
17 | paginationValidator, | |
18 | abusesSortValidator, | |
19 | setDefaultSort, | |
20 | setDefaultPagination, | |
21 | abuseListForUserValidator, | |
22 | asyncMiddleware(listMyAbuses) | |
23 | ) | |
24 | ||
25 | // --------------------------------------------------------------------------- | |
26 | ||
27 | export { | |
28 | myAbusesRouter | |
29 | } | |
30 | ||
31 | // --------------------------------------------------------------------------- | |
32 | ||
33 | async function listMyAbuses (req: express.Request, res: express.Response) { | |
34 | const resultList = await AbuseModel.listForUserApi({ | |
35 | start: req.query.start, | |
36 | count: req.query.count, | |
37 | sort: req.query.sort, | |
38 | id: req.query.id, | |
39 | search: req.query.search, | |
40 | state: req.query.state, | |
41 | user: res.locals.oauth.token.User | |
42 | }) | |
43 | ||
44 | return res.json({ | |
45 | total: resultList.total, | |
94148c90 | 46 | data: resultList.data.map(d => d.toFormattedUserJSON()) |
edbc9325 C |
47 | }) |
48 | } |