summaryrefslogtreecommitdiffstats
path: root/server/lib/external-backends
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/lib/external-backends
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/lib/external-backends')
-rw-r--r--server/lib/external-backends/backendhelper.js9
1 files changed, 4 insertions, 5 deletions
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)