-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
86 lines (72 loc) · 2.14 KB
/
index.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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
const express = require('express');
const exphbs = require('express-handlebars');
const session = require('express-session');
const mongoose = require('mongoose');
const MongoStore = require('connect-mongo');
const bodyParser = require('body-parser');
const validator = require('validator');
const dotenv = require (`dotenv`);
const routes = require('./routes/routes.js');
const db = require('./models/db.js');
const multer = require('multer');
const app = express();
dotenv.config ();
port = process.env.PORT;
hostname = process.env.HOSTNAME;
app.use(session({
secret: 'blueprint',
resave: false,
saveUninitialized: false,
store: MongoStore.create({ mongoUrl:
'mongodb+srv://admin:blueprint@blueprint.gykvx.mongodb.net/myFirstDatabase?retryWrites=true&w=majority' })
}));
app.engine('hbs', exphbs({
defaultLayout: 'main',
extname: '.hbs',
helpers: {
ifEqual : function (user1, user2, opts) {
try
{
if (user1.toLowerCase () == user2.toLowerCase ())
return opts.fn (this);
else
return opts.inverse(this);
} catch (error) { }
},
dateFormat : function (date) {
var date = date.toString ().split (" ");
var year = date [3];
var month = date [1];
var day = date [2];
return (month + " " + day + ", " + year);
},
getDay : function (date) {
var date = date.toString ().split (" ");
var day = date [2];
return day;
}
}
}));
app.use(bodyParser.urlencoded ({extended:true}));
app.use(bodyParser.json());
app.set('view engine', 'hbs');
app.use(express.static('public'));
app.use('/', routes);
app.use(function(err, req, res, next){
res.status(err.status);
res.render('error', {
error: err,
code: err.status
});
});
app.use(function (req, res) {
var details = {
error: "Error: Page not found.",
code: "404"
};
res.render('error', details);
});
db.connect();
app.listen(port, () => {
console.log('The web server has started on port ' + port);
});