-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
68 lines (52 loc) · 1.66 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
56
57
58
59
60
61
62
63
64
65
66
67
68
const path = require('path');
const express = require('express');
const session = require('express-session');
const pug = require('pug');
const middleware = require('./middleware');
const withAuth = require('./utils/auth');
const app = express();
const PORT = process.env.PORT || 3001;
const sequelize = require("./config/connection");
const SequelizeStore = require('connect-session-sequelize')(session.Store);
const sess = {
secret: 'Congenial Waffle',
// cookie: {},
resave: true,
saveUninitialized: false,
// store: new SequelizeStore({
// db: sequelize
// })
};
app.use(session(sess));
// Routes
const loginRoute = require('./routes/loginRoutes');
const registerRoute = require('./routes/registerRoutes');
const leaderboardRoute = require('./routes/leaderboardRoutes');
// API routes
const postRouteApi = require('./routes/api/postRoutes');
const leaderboardRouteApi = require('./routes/api/leaderboardRoutes');
app.set('view engine', 'pug');
app.set('views', 'views');
app.use(express.json());
app.use(express.urlencoded({
extended: false
}));
app.use(express.static(path.join(__dirname, '/public')));
app.use('/login', loginRoute);
app.use('/register', registerRoute);
app.use('/leaderboard', leaderboardRoute);
app.use('/api/postRoutes', postRouteApi);
app.use('/api/leaderboardRoutes', leaderboardRouteApi);
app.get('/', middleware.requireLogin, (req, res, next) => {
var payload = {
pageTitle: "Top 5",
userLoggedIn: req.session.user,
userLoggedInJs: JSON.stringify(req.session.user),
}
res.status(200).render('home', payload);
})
sequelize.sync({
force: false
}).then(() => {
app.listen(PORT, () => console.log('Now listening'));
});