var express = require('express'); var router = express.Router(); var path = require('path'); // Authentication routes var auth = require(path.join(__dirname, 'lib', 'authentication')); router.get('/auth', auth.auth); router.post('/login', auth.login); router.post('/signup', auth.signup); router.post('/logout', auth.logout); router.post('/changepassword', auth.changePassword); // User API var user = require(path.join(__dirname, 'api', 'user')); router.get('/user/info', auth.verifyToken, user.info); // Locations API var locations = require(path.join(__dirname, 'api', 'locations')); router.get('/locations', auth.verifyToken, locations.get); router.post('/locations', locations.post); // Clients API var clients = require(path.join(__dirname, 'api', 'clients')); router.get('/clients', clients.get); router.post('/clients', clients.post); // Permissions API var permissions = require(path.join(__dirname, 'api', 'permissions')); router.get('/getRolesByUserid', permissions.getRolesByUserid); router.post('/getRoleById', auth.verifyToken, permissions.getRoleById); // Shell API var shell = require(path.join(__dirname, 'lib', 'shell')); router.get('/shell/buildipxe', shell.buildIPXE); // Nodemailer API var nodemailer = require(path.join(__dirname, 'lib', 'nodemailer')); router.get('/mail/send', nodemailer.sendMail); // External backends API var backends = require(path.join(__dirname, 'api', 'backends')); router.get('/backends/getCredentialsByType', auth.verifyToken, backends.getCredentialsByType); router.get('/backends/getBackendInfoById', auth.verifyToken, backends.getBackendInfoById); router.get('/backends/getBackendList', auth.verifyToken, backends.getBackendList); router.get('/backends/getBackendTypes', backends.getBackendTypes); router.post('/backends/saveBackend', auth.verifyToken, backends.saveBackend); router.post('/backends/deleteBackendById', auth.verifyToken, backends.deleteBackendById) // Load ipxe scipts API var ipxeloader = require(path.join(__dirname, 'api', 'ipxe-loader')); router.get('/ipxe-loader/load-script', ipxeloader.loadScript); module.exports = router;