Adding EJS Templating engine + a baseUrl variable injected in front-end.
50 lines
1.5 KiB
JavaScript
50 lines
1.5 KiB
JavaScript
var express = require('express');
|
|
var app = express();
|
|
var server = require('http').createServer(app);
|
|
var bodyParser = require('body-parser');
|
|
var compress = require('compression');
|
|
var cors = require('cors');
|
|
|
|
var authMiddleware = require('../lib/server/middlewares/authMiddleware');
|
|
var apiLimitsMiddleware = require('../lib/server/middlewares/apiLimitsMiddleware');
|
|
var wwwRedirectMiddleware = require('../lib/server/middlewares/wwwRedirectMiddleware');
|
|
|
|
|
|
// Middlewares
|
|
app.use(compress());
|
|
app.use(bodyParser.json());
|
|
app.use(cors());
|
|
app.use(wwwRedirectMiddleware);
|
|
app.use(authMiddleware);
|
|
app.use(apiLimitsMiddleware);
|
|
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
|
|
|
|
|
|
// EJS HTML engine
|
|
app.engine('.html', require('ejs').__express);
|
|
app.set('view engine', 'ejs');
|
|
|
|
|
|
// Initialize the controllers
|
|
var apiController = require('../lib/server/controllers/apiController')(app);
|
|
var frontController = require('../lib/server/controllers/frontController')(app);
|
|
|
|
|
|
// Let's start the server!
|
|
if (!process.env.GRUNTED) {
|
|
var settings = require('../server_config/settings.json');
|
|
|
|
app.locals.baseUrl = settings.baseUrl;
|
|
|
|
server.listen(settings.serverPort, function() {
|
|
console.log('Listening on port %d', server.address().port);
|
|
|
|
// For the tests
|
|
if (server.startTests) {
|
|
server.startTests();
|
|
}
|
|
});
|
|
}
|
|
|
|
module.exports = app;
|