2020-05-14 16:12:30 +02:00
|
|
|
const { create, destroy } = require("../../db/clientDb")
|
|
|
|
const env = require("../../environment")
|
2020-04-08 12:18:30 +02:00
|
|
|
|
2020-04-28 15:39:35 +02:00
|
|
|
exports.getClientId = async function(ctx) {
|
2020-05-14 16:12:30 +02:00
|
|
|
ctx.body = env.CLIENT_ID
|
2020-05-07 11:53:34 +02:00
|
|
|
}
|
2020-04-28 15:39:35 +02:00
|
|
|
|
2020-04-09 17:53:48 +02:00
|
|
|
exports.create = async function(ctx) {
|
2020-06-10 22:39:30 +02:00
|
|
|
const clientId = getClientId(ctx)
|
|
|
|
await create(clientId)
|
2020-05-14 16:12:30 +02:00
|
|
|
ctx.status = 200
|
2020-06-10 22:39:30 +02:00
|
|
|
ctx.message = `Client Database ${clientId} successfully provisioned.`
|
2020-05-07 11:53:34 +02:00
|
|
|
}
|
2020-04-08 12:18:30 +02:00
|
|
|
|
2020-04-09 17:53:48 +02:00
|
|
|
exports.destroy = async function(ctx) {
|
2020-06-10 22:39:30 +02:00
|
|
|
const clientId = getClientId(ctx)
|
|
|
|
await destroy(clientId)
|
2020-05-14 16:12:30 +02:00
|
|
|
ctx.status = 200
|
2020-06-10 22:39:30 +02:00
|
|
|
ctx.message = `Client Database ${clientId} successfully deleted.`
|
|
|
|
}
|
|
|
|
|
|
|
|
const getClientId = ctx => {
|
|
|
|
const clientId =
|
|
|
|
(ctx.query && ctx.query.clientId) ||
|
|
|
|
(ctx.body && ctx.body.clientId) ||
|
|
|
|
env.CLIENT_ID
|
|
|
|
if (!clientId) {
|
|
|
|
ctx.throw(400, "ClientId not suplied")
|
|
|
|
}
|
|
|
|
return clientId
|
2020-05-07 11:53:34 +02:00
|
|
|
}
|