-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathweb.js
More file actions
34 lines (29 loc) · 998 Bytes
/
web.js
File metadata and controls
34 lines (29 loc) · 998 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
const express = require('express');
const session = require('express-session');
const app = express();
const walk = require('walk');
const { web, secret } = require('./backend/config');
const bodyParser = require('body-parser');
app.set('view engine', 'ejs');
app.use(express.static(__dirname + '/views/public'));
app.use(session({
secret,
resave: true,
saveUninitialized: true
}));
app.use(bodyParser.urlencoded({ extended : true }));
app.use(bodyParser.json());
walk.walk('./backend/routes')
.on('files', (root, files, next) => {
for (var file of files) {
let fileData = require(`${root}/${file.name}`);
if (!fileData.route)
throw new Error(`File: ${file.name} has no route for the web server, please add one.`);
app[fileData.type](fileData.route, function(request, response) {
fileData.run(request, response);
});
}
});
app.listen(web.port, function() {
console.log(`Website online. Listenting to port ${web.port}`);
});