summaryrefslogblamecommitdiffstats
path: root/server/router.js
blob: 263abedb9351b72ea96fa96bdbf50c7ceffe6a0b (plain) (tree)






































                                                                       












                                                                                              
                       
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;