-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathborga-server.js
45 lines (32 loc) · 1.15 KB
/
borga-server.js
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
35
36
37
38
39
40
41
42
43
44
45
'use strict';
const express = require('express');
const session = require('express-session');
const passport = require('passport');
passport.serializeUser((userInfo, done) => { done(null, userInfo); });
passport.deserializeUser((userInfo, done) => { done(null, userInfo); });
module.exports = function (es_spec, guest, use_data_db) {
const data_ext_games = require('./board-games-data.js');
const data_int = require('./borga-data-mem.js')(guest);
const data_db =
require('./borga-data-db')(
es_spec.url,
es_spec.prefix
);
const services = require('./borga-services.js')(data_ext_games, use_data_db ? data_db : data_int);
const web_api = require('./borga-web-api.js')(services);
const web_site = require('./borga-web-site.js')(services);
const app = express();
app.use(session({
secret: 'isel-ipw-borga',
resave: false,
saveUninitialized: false
}));
app.use(passport.initialize());
app.use(passport.session());
app.set('view engine', 'hbs');
app.use('/favicon.ico', express.static('static-files/favicon.ico'));
app.use('/public', express.static('static-files'));
app.use('/api', web_api);
app.use('/', web_site);
return app;
};