2018-06-19 22:47:26 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
const express = require('express');
|
|
|
|
const pjson = require('../../../../package.json');
|
2018-06-26 01:56:10 +00:00
|
|
|
const error = require('../../lib/error');
|
2018-06-19 22:47:26 +00:00
|
|
|
|
|
|
|
let router = express.Router({
|
|
|
|
caseSensitive: true,
|
|
|
|
strict: true,
|
|
|
|
mergeParams: true
|
|
|
|
});
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Health Check
|
|
|
|
* GET /api
|
|
|
|
*/
|
|
|
|
router.get('/', (req, res/*, next*/) => {
|
|
|
|
let version = pjson.version.split('-').shift().split('.');
|
|
|
|
|
|
|
|
res.status(200).send({
|
|
|
|
status: 'OK',
|
|
|
|
version: {
|
|
|
|
major: parseInt(version.shift(), 10),
|
|
|
|
minor: parseInt(version.shift(), 10),
|
|
|
|
revision: parseInt(version.shift(), 10)
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
router.use('/tokens', require('./tokens'));
|
|
|
|
router.use('/users', require('./users'));
|
2018-07-16 07:00:52 +00:00
|
|
|
router.use('/audit-log', require('./audit-log'));
|
2018-06-26 01:56:10 +00:00
|
|
|
router.use('/reports', require('./reports'));
|
2018-07-09 01:22:10 +00:00
|
|
|
router.use('/nginx/proxy-hosts', require('./nginx/proxy_hosts'));
|
|
|
|
router.use('/nginx/redirection-hosts', require('./nginx/redirection_hosts'));
|
|
|
|
router.use('/nginx/dead-hosts', require('./nginx/dead_hosts'));
|
|
|
|
router.use('/nginx/streams', require('./nginx/streams'));
|
2018-07-24 06:56:39 +00:00
|
|
|
router.use('/nginx/access-lists', require('./nginx/access_lists'));
|
2018-06-26 01:56:10 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* API 404 for all other routes
|
|
|
|
*
|
|
|
|
* ALL /api/*
|
|
|
|
*/
|
|
|
|
router.all(/(.+)/, function (req, res, next) {
|
|
|
|
req.params.page = req.params['0'];
|
|
|
|
next(new error.ItemNotFoundError(req.params.page));
|
|
|
|
});
|
2018-06-19 22:47:26 +00:00
|
|
|
|
|
|
|
module.exports = router;
|