-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
55 lines (39 loc) · 1.16 KB
/
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
46
47
48
49
50
51
52
53
54
55
"use strict";
var config = require('./config');
var express = require('express');
var parser = require('body-parser')
var hbs = require('express-hbs');
var helpers = require('./lib/helpers');
var app = module.exports = express();
var mongo = require('co-easymongo')({
dbname: config.get('dbname')
});
var routes = require('./routes');
if ('development' === app.settings.env) {
var morgan = require('morgan');
app.use(morgan('dev'));
app.use(express.static(__dirname + '/public'));
}
for (var helper in helpers) {
if (!helpers.hasOwnProperty(helper)) {
continue;
}
hbs.registerHelper(helper, helpers[helper]);
}
app.engine('hbs', hbs.express3({
defaultLayout: __dirname + '/views/layout'
}));
app.set('view engine', 'hbs');
app.set('views', __dirname + '/views');
app.use(parser.urlencoded({extended: false}));
app.use(parser.json())
app.response.yamb = require('yamb')({
storage: mongo.collection(config.get('collection')),
yapi: config.get('yapi')
});
app.response.error = require('./lib/notfound');
routes(app);
if (!module.parent) {
app.listen(config.get('port'));
console.log('\n running yamb on port ' + config.get('port') + '\n');
}