-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
126 lines (90 loc) · 2.83 KB
/
Copy pathserver.js
File metadata and controls
126 lines (90 loc) · 2.83 KB
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
//default packages
const express = require('express');
const bodyparser = require('body-parser')
const cookieparser = require('cookie-parser');
const session = require('express-session')
const mongosession = require('connect-mongodb-session')(session)
const morgan = require('morgan')
const dotenv = require('dotenv');
const methodOverride = require('method-override');
//importing routes
const dbconnect = require('./Dbconnections/db');
const login = require('./Routes/login')
const dashboard = require('./Routes/dashboard')
const createpost = require('./Routes/createpost')
const updateposts = require('./Routes/updateposts')
const updateprofile = require('./Routes/updateprofile')
const readblog = require('./Routes/readblog')
const yourposts = require('./Routes/yourposts')
const allblogs = require('./Routes/allblogs')
const likepost = require('./Routes/likepost')
const postcomment = require('./Routes/postcomment');
const themeblogs = require('./Routes/themeblogs');
const adminviewpost = require('./Routes/adminviewpost')
const admincreatepost = require('./Routes/admincreatepost')
const admindashboard = require('./Routes/admindashboard')
const adminupdatepost = require('./Routes/adminupdatepost')
dotenv.config();
const app = express();
app.use(methodOverride('_method'));
app.use(cookieparser())
app.use(express.static('Public'))
app.use(express.static('uploads'))
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
//template engine
app.set('view engine', 'ejs');
app.set('views', 'views');
//dbconnection
const dburl = process.env.DBURL;
dbconnect(dburl);
const store = new mongosession(
{
uri: dburl,
collection: "mysession"
}
)
app.use(session({
key: "thisiskey",
secret: "THISISSECRET",
saveUninitialized: false,
resave: false,
cookie: {
expires: 1000 * 60 * 60 * 24
},
store: store
}))
const isAuth = (req, res, next) => {
if (req.session && req.session.isAuth) {
res.redirect('/dashboard');
} else {
if (req.url !== '/login') {
res.redirect('/login');
} else {
next();
}
}
};
const port = process.env.PORT || 8000;
app.get('/', (req, res) => {
res.redirect('/login');
});
app.use('/', login)
app.use('/dashboard', dashboard)
app.use('/createpost', createpost)
app.use('/yourposts', yourposts)
app.use('/updateposts', updateposts)
app.use('/updateprofile',updateprofile)
app.use('/allblogs', allblogs)
app.use('/readblog', readblog)
app.use('/likepost', likepost)
app.use('/postcomment', postcomment)
app.use('/themeblogs', themeblogs)
app.use('/admindashboard',admindashboard)
app.use('/admincreatepost', admincreatepost)
app.use('/adminviewpost', adminviewpost)
app.use('/adminupdatepost',adminupdatepost)
app.listen(port, (req, res) => {
console.log(`server is running at ${port}`);
})
module.exports = { isAuth }