From 265ba139ebf56bbdc1c65f6ea4f367774c691fc0 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 3 Jan 2018 16:38:50 +0100 Subject: Send account activitypub update events --- server/controllers/api/accounts.ts | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 server/controllers/api/accounts.ts (limited to 'server/controllers/api/accounts.ts') diff --git a/server/controllers/api/accounts.ts b/server/controllers/api/accounts.ts new file mode 100644 index 000000000..aded581a5 --- /dev/null +++ b/server/controllers/api/accounts.ts @@ -0,0 +1,38 @@ +import * as express from 'express' +import { getFormattedObjects } from '../../helpers/utils' +import { asyncMiddleware, paginationValidator, setAccountsSort, setPagination } from '../../middlewares' +import { accountsGetValidator, accountsSortValidator } from '../../middlewares/validators' +import { AccountModel } from '../../models/account/account' + +const accountsRouter = express.Router() + +accountsRouter.get('/', + paginationValidator, + accountsSortValidator, + setAccountsSort, + setPagination, + asyncMiddleware(listAccounts) +) + +accountsRouter.get('/:id', + asyncMiddleware(accountsGetValidator), + getAccount +) + +// --------------------------------------------------------------------------- + +export { + accountsRouter +} + +// --------------------------------------------------------------------------- + +function getAccount (req: express.Request, res: express.Response, next: express.NextFunction) { + return res.json(res.locals.account.toFormattedJSON()) +} + +async function listAccounts (req: express.Request, res: express.Response, next: express.NextFunction) { + const resultList = await AccountModel.listForApi(req.query.start, req.query.count, req.query.sort) + + return res.json(getFormattedObjects(resultList.data, resultList.total)) +} -- cgit v1.2.3