From 9c43334715500d09fab6825512fe398ece163d73 Mon Sep 17 00:00:00 2001 From: Jannik Schönartz Date: Thu, 19 Jul 2018 03:43:43 +0000 Subject: [server/external-backends] Added ids to the backend credentials to reduce overhead in the db. Only the values of the credentials are saved. Added dummy method for check connection. --- server/api/backends.js | 22 ++++++++++++++++++---- .../external-backends/backends/another-backend.js | 2 +- .../external-backends/backends/dummy-backend.js | 2 +- .../external-backends/backends/template-backend.js | 2 +- server/router.js | 3 ++- 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/server/api/backends.js b/server/api/backends.js index fd2657b..b744bd2 100644 --- a/server/api/backends.js +++ b/server/api/backends.js @@ -11,7 +11,6 @@ module.exports = { if (instance === null) { res.status(500).send({ auth: false, status: 'TYPE_INVALID', error_message: 'The provided backend type is invalid.' }) } - res.status(200).send(instance.getCredentials()) }, @@ -48,6 +47,21 @@ module.exports = { }) }, + checkConnection: function (req, res) { + var x = Math.floor(Math.random() * Math.floor(2)) + var y = '' + if (x === 0) { + y = 'success' + } else { + y = 'error' + } + var w = 'Oh noes! An error occurred.' + var z = Math.floor(Math.random() * Math.floor(5000)) + + + setTimeout(function() { res.status(200).send({ status: y, msg: w }) }, 0) + }, + // POST REQUESTS saveBackend: function (req, res) { // Save credentials in the db. @@ -66,10 +80,10 @@ module.exports = { res.status(200).send('success') }, - deleteBackendById: function (req, res) { - const backendId = req.body.id + deleteBackends: function (req, res) { + const backendIds = req.body.id - db.backend.destroy({ where: { id: backendId } }).then(function () { + db.backend.destroy({ where: { id: backendIds } }).then(function () { res.status(200).send('success') }) } diff --git a/server/lib/external-backends/backends/another-backend.js b/server/lib/external-backends/backends/another-backend.js index 5efc185..eb329ae 100644 --- a/server/lib/external-backends/backends/another-backend.js +++ b/server/lib/external-backends/backends/another-backend.js @@ -2,7 +2,7 @@ var ExternalBackends = require('../external-backends.js') class AnotherBackend extends ExternalBackends { getCredentials () { - return [{ type: 'text', name: 'text 1' }, { type: 'text', name: 'text 2' }, { type: 'password', name: 'password 1', show: false }, { type: 'password', name: 'password 2', show: true }, { type: 'password', name: 'password 3', show: false }] + return [{ type: 'text', id: 1, name: 'text 1' }, { type: 'text', id: 2, name: 'text 2' }, { type: 'password', id: 3, name: 'password 1', show: false }, { type: 'password', id: 4, name: 'password 2', show: true }, { type: 'password', id: 5, name: 'password 3', show: false }] } } diff --git a/server/lib/external-backends/backends/dummy-backend.js b/server/lib/external-backends/backends/dummy-backend.js index a261af1..6052953 100644 --- a/server/lib/external-backends/backends/dummy-backend.js +++ b/server/lib/external-backends/backends/dummy-backend.js @@ -2,7 +2,7 @@ var ExternalBackends = require('../external-backends.js') class DummyBackend extends ExternalBackends { getCredentials () { - return [{ type: 'switch', name: 'switch 1', value: false }, { type: 'switch', name: 'switch 2', value: false }, { type: 'switch', name: 'switch 3', value: true }, { type: 'select', name: 'selection 1', items: ['wasd', 'asdf', 'qwertz'] }, { type: 'select', name: 'selection 2', items: ['1', '2', '3'] }] + return [{ type: 'switch', id: 1, name: 'switch 1', value: false }, { type: 'switch', id: 2, name: 'switch 2', value: false }, { type: 'switch', id: 3, name: 'switch 3', value: true }, { type: 'select', id: 4, name: 'selection 1', items: ['wasd', 'asdf', 'qwertz'] }, { type: 'select', id: 5, name: 'selection 2', items: ['1', '2', '3'] }] } } diff --git a/server/lib/external-backends/backends/template-backend.js b/server/lib/external-backends/backends/template-backend.js index 9ce799d..19f1d76 100644 --- a/server/lib/external-backends/backends/template-backend.js +++ b/server/lib/external-backends/backends/template-backend.js @@ -2,7 +2,7 @@ var ExternalBackends = require('../external-backends.js') class TemplateBackend extends ExternalBackends { getCredentials () { - return [{ type: 'text', name: 'text test' }, { type: 'password', name: 'password test', show: true }, { type: 'password', name: 'password test nr2', show: false }, { type: 'switch', name: 'bool test', value: false }, { type: 'select', name: 'selection test', items: ['wasd', 'asdf', 'qwertz'] }] + return [{ type: 'text', id: 1, name: 'text test', icon: 'bug_report' }, { type: 'password', id: 2, name: 'password test', show: true }, { type: 'password', id: 3, name: 'password test nr2', show: false }, { type: 'switch', id: 4, name: 'bool test', value: false }, { type: 'select', id: 5, name: 'selection test', items: ['wasd', 'asdf', 'qwertz'] }] } } diff --git a/server/router.js b/server/router.js index 4f8d0bb..bd03a65 100644 --- a/server/router.js +++ b/server/router.js @@ -43,8 +43,9 @@ router.get('/backends/getCredentialsByType', auth.verifyToken, backends.getCrede router.get('/backends/getBackendInfoById', auth.verifyToken, backends.getBackendInfoById) router.get('/backends/getBackendList', auth.verifyToken, backends.getBackendList) router.get('/backends/getBackendTypes', backends.getBackendTypes) +router.get('/backends/checkConnection', auth.verifyToken, backends.checkConnection) router.post('/backends/saveBackend', auth.verifyToken, backends.saveBackend) -router.post('/backends/deleteBackendById', auth.verifyToken, backends.deleteBackendById) +router.post('/backends/deleteBackends', auth.verifyToken, backends.deleteBackends) // Load ipxe scipts API var ipxeloader = require(path.join(__dirname, 'api', 'ipxe-loader')) -- cgit v1.2.3-55-g7522