umami/pages/api/account/[id].js

30 lines
614 B
JavaScript
Raw Normal View History

2022-07-12 23:14:36 +02:00
import { getAccountById, deleteAccount } from 'queries';
2020-08-09 11:03:37 +02:00
import { useAuth } from 'lib/middleware';
2022-08-29 05:20:54 +02:00
import { methodNotAllowed, ok, unauthorized } from 'next-basics';
2020-08-09 11:03:37 +02:00
export default async (req, res) => {
await useAuth(req, res);
const { is_admin } = req.auth;
const { id } = req.query;
const user_id = +id;
2020-09-16 18:25:14 +02:00
if (!is_admin) {
2020-09-11 22:49:43 +02:00
return unauthorized(res);
}
2020-08-09 11:03:37 +02:00
2020-09-11 22:49:43 +02:00
if (req.method === 'GET') {
const account = await getAccountById(user_id);
2020-08-09 11:03:37 +02:00
2020-09-11 22:49:43 +02:00
return ok(res, account);
2020-08-09 11:03:37 +02:00
}
if (req.method === 'DELETE') {
2020-09-11 22:49:43 +02:00
await deleteAccount(user_id);
2020-08-09 11:03:37 +02:00
2020-09-11 22:49:43 +02:00
return ok(res);
2020-08-09 11:03:37 +02:00
}
return methodNotAllowed(res);
};