seepur/app/Controllers/Http/AdminApiController.js

55 lines
1.5 KiB
JavaScript

'use strict'
const User = use('App/Models/User');
const Child = use('App/Models/Child');
const Link = use('App/Models/Link');
const IceServer = use('App/Models/IceServer');
const EmailUtils = use('App/Utils/EmailUtils');
class AdminApiController {
async getUsers({ response }) {
const users = await User.all();
// console.log(typeof users);
// return users.rows.map(u => {
// return u.publicJSON();
// });
return users;
}
async deleteUser({ request, response }) {
console.log('in delete user')
const { id } = request.params
const user = await User.find(id)
let userLinks = await user.links().fetch();
const links = userLinks.rows
const promises = [...links.map(l => (l.delete())), user.delete()];
return await Promise.all(promises);
}
async addStunServer({ request, response }) {}
async addTurnServer({ request, response }) {}
async testEmailSettings({ auth, response }) {
try {
if (EmailUtils.sendTestEmail(auth.user)) {
return {
code: 0,
data: {}
}
}
return {
code: 500,
message: 'Something went wrong'
}
} catch (e) {
response.code(500);
return {
code: 500,
message: e.message
}
}
}
}
module.exports = AdminApiController