-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
52 lines (43 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
const express = require("express")
require('dotenv').config
const expressSession = require('express-session')
const pgSession = require('connect-pg-simple')(expressSession);
const db = require('./database/db')
// require controllers HERE
const usersController = require('./controllers/users')
const sessionController = require('./controllers/session')
const addReviewController = require('./controllers/addReviewController.js'); // Kim
const searchController = require('./controllers/search')
const singleCampsiteResultController = require('./controllers/singleCampsiteResultController.js'); // Kim
const addCampsiteController = require('./controllers/addcampsite')
const editCampsiteController = require('./controllers/editCampsiteController.js'); // Kim
const app = express()
const port = process.env.PORT || 3001;
// Session for Cookies
app.use(expressSession({
store: new pgSession({
pool:db,
createTableIfMissing:true,
}),
secret: ','
}))
// Logging Middleware NEEDS TO BE BEFORE THE ROUTES (i.e. here)
app.use((req, res, next) => {
console.log(`${new Date()} ${req.method} ${req.path}`);
next()
})
// Tell server where client/statics folders are
app.use(express.static('client'))
app.use(express.json())
// Add app.use for other controllers here
app.use('/api/users', usersController);
app.use('/api/session', sessionController);
app.use('/api/campsite', searchController);
app.use('/', addCampsiteController);
app.use('/', singleCampsiteResultController);
app.use('/', addReviewController);
app.use('/', editCampsiteController);
// start the web server
app.listen(port, () => {
console.log(`Web server is listening on http://localhost:${port}`)
})