summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorJannik Schönartz2018-11-22 00:02:23 +0100
committerJannik Schönartz2018-11-22 00:02:23 +0100
commit75a3a3e8fa85a591c23c84638a74398767bce66e (patch)
tree5d93fbacc7a2671784b2d0e6f35b277d1f2c6114 /server
parent[server/models] fix backend model primary keys (diff)
downloadbas-75a3a3e8fa85a591c23c84638a74398767bce66e.tar.gz
bas-75a3a3e8fa85a591c23c84638a74398767bce66e.tar.xz
bas-75a3a3e8fa85a591c23c84638a74398767bce66e.zip
[external-backends] Fix: Delete clients in the backend is now working properly.
Diffstat (limited to 'server')
-rw-r--r--server/api/clients.js6
-rw-r--r--server/api/registrations.js10
-rw-r--r--server/lib/external-backends/backendhelper.js9
3 files changed, 15 insertions, 10 deletions
diff --git a/server/api/clients.js b/server/api/clients.js
index 0fbb7af..a436213 100644
--- a/server/api/clients.js
+++ b/server/api/clients.js
@@ -42,7 +42,9 @@ module.exports.post = {
// delete clients
delete: function (req, res) {
- db.client.destroy({ where: { id: req.body.ids } }).then(count => { res.send({ count }) })
- backendHelper.deleteClients(req.body.ids)
+ db.client.destroy({ where: { id: req.body.ids } }).then(count => {
+ backendHelper.deleteClients()
+ res.send({ count })
+ })
}
}
diff --git a/server/api/registrations.js b/server/api/registrations.js
index 96d50f0..6897dc9 100644
--- a/server/api/registrations.js
+++ b/server/api/registrations.js
@@ -12,14 +12,18 @@ const backendHelper = require(path.join(__appdir, 'lib', 'external-backends', 'b
/*
* TODO: CURRENTLY TEST FUNCTION
*/
-router.get('/', (req, res) => {
- db.backend.findOne({ where: { id: 1 } }).then(result => {
+noAuthRouter.get('/', (req, res) => {
+ backendHelper.deleteClients().then(r => {
+ res.send(r)
+ })
+ /*
+ db.backend.findOne({ where: { id: 1 } }).then(result => {
const b = new ExternalBackends()
const instance = b.getInstance(result.type)
instance.getClient(result.credentials, {}).then(result => {
res.status(200).send(result)
})
- })
+ })*/
})
/*
diff --git a/server/lib/external-backends/backendhelper.js b/server/lib/external-backends/backendhelper.js
index 0905c48..89a9658 100644
--- a/server/lib/external-backends/backendhelper.js
+++ b/server/lib/external-backends/backendhelper.js
@@ -39,16 +39,15 @@ module.exports = {
})
},
- deleteClients: function (objectIds) {
+ deleteClients: function () {
// Get all backends and call deleteClient for each instance.
- db.backend.findAll({ include: ['mappedClients'] }).then(backends => {
+ db.backend.findAll({ include: ['clientMappings'] }).then(backends => {
backends.forEach(backend => {
const ba = new ExternalBackends()
const instance = ba.getInstance(backend.type)
var objectsToDelete = []
- objectIds.forEach(oid => {
- var element = backend.mappedClients.find(x => x.id === parseInt(oid))
- if (element) objectsToDelete.push(element.backend_x_client.externalId)
+ backend.clientMappings.forEach(mapping => {
+ if (mapping.clientId === null) objectsToDelete.push(mapping.externalId)
})
// If there are objects to delete -> delete them.
if (objectsToDelete.length > 0) instance.deleteObjects(backend.credentials, objectsToDelete)