mirror of
https://framagit.org/les/gancio.git
synced 2025-02-01 00:52:01 +01:00
50 lines
1.7 KiB
JavaScript
50 lines
1.7 KiB
JavaScript
const APUser = require('../models/ap_user')
|
|
const Instance = require('../models/instance')
|
|
const Resource = require('../models/resource')
|
|
|
|
// const { Op } = require('sequelize')
|
|
|
|
const instancesController = {
|
|
async getAll (req, res) {
|
|
const instances = await Instance.findAll({ raw: true })
|
|
return res.json(instances)
|
|
},
|
|
|
|
// async getUsedInstance (req, res) {
|
|
// // const ap_users = await APUser.findAll({
|
|
// // attributes: ['ap_id', 'blocked', 'instanceDomain'],
|
|
// // where: { [Op.or]: [{ follower: true }, { blocked: true }] },
|
|
// // include: [
|
|
// // { model: Resource, attributes: ['id', 'eventId'], include: [{ model: Event, attributes: ['title'] }] },
|
|
// // { model: Instance, attributes: ['blocked', 'name', 'domain'] }],
|
|
// // nest: true,
|
|
// // raw: true
|
|
// // })
|
|
// const instances = await Instance.findAll({
|
|
// include: [
|
|
// { model: APUser, where: { [Op.or]: [{ follower: true }, { blocked: true }] }, attributes: [] }
|
|
// ],
|
|
// attributes: ['domain', 'name', 'blocked'],
|
|
// raw: true
|
|
// })
|
|
// console.error(instances)
|
|
// res.json(instances)
|
|
// },
|
|
|
|
/**
|
|
* get instance's users
|
|
*/
|
|
async get (req, res) {
|
|
const ap_users = await APUser.findAll({ where: { instanceDomain: req.params.instance_domain }, include: [Resource] })
|
|
return res.json(ap_users)
|
|
},
|
|
|
|
async toggleBlock (req, res) {
|
|
const instance = await Instance.findByPk(req.body.instance)
|
|
if (!instance) { return res.status(404).send('Not found') }
|
|
await instance.update({ blocked: req.body.blocked })
|
|
return res.json(instance)
|
|
}
|
|
}
|
|
|
|
module.exports = instancesController
|