Skip to content

Commit ac1d02a

Browse files
committed
chore: Update authentication middleware to set user in response locals
1 parent 8773254 commit ac1d02a

File tree

7 files changed

+46
-5
lines changed

7 files changed

+46
-5
lines changed

controllers/authControllers.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ module.exports.signup=async function signup(req,res){
3535
var token = jwt.sign({ user_id }, 'This is supposed to be secret , made with <3 by tba', { expiresIn: '180d' });
3636
res.cookie('X-Auth-Token', token , {maxAge: 86400000});
3737
// res.status(201).json({ token, usr });
38-
// res.redirect('/login');
38+
res.redirect('/');
3939
} catch (err) {
4040
res.status(500).send(err.message);
4141
}

middleware/authMiddleware.js

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ function authverify(req, res, next) {
1818
}
1919
else {
2020
console.log(decodedtoken);
21+
res.locals.user = decodedtoken;
22+
console.log(res);//auth->locals->user
2123
next();
2224
}
2325
});

middleware/userMiddleware.js

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
const jwt = require('jsonwebtoken');
2+
3+
function userverify(req, res, next) {
4+
var incomimg_token = req.cookies;
5+
console.log(incomimg_token);
6+
if (!incomimg_token) {
7+
// res.status(400).send("No token");
8+
// res.redirect("/signup");
9+
next();
10+
return;
11+
}
12+
else if (!incomimg_token['X-Auth-Token']) {
13+
next();
14+
return;
15+
}
16+
// console.log(incomimg_token);/
17+
else{jwt.verify(incomimg_token['X-Auth-Token'], 'This is supposed to be secret , made with <3 by tba', (err, decodedtoken) => {
18+
if (err) {
19+
// console.log(err);
20+
// res.redirect("/login");
21+
}
22+
else {
23+
console.log(decodedtoken);
24+
res.locals.user = decodedtoken;
25+
console.log(res);//auth->locals->user
26+
}})
27+
};
28+
next();
29+
}
30+
31+
module.exports.userverify = userverify;

server.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ const app = express();
33
const File = require('./models/file');
44
const connectDB = require('./helpers/db');
55
const cors = require('cors')
6-
const {filesRoute} = require('./routes/files'); // Import the router
6+
const { filesRoute } = require('./routes/files'); // Import the router
7+
const { userverify } = require('./middleware/userMiddleware');
78
const cookieparser = require('cookie-parser');
89
const { router } = require('./routes/authRoutes'); // Import the router
910
const { authverify } = require('./middleware/authMiddleware');
@@ -21,6 +22,8 @@ app.use(cookieparser())
2122
app.set('view engine', 'ejs');
2223
// Use the files route
2324
app.use(router);
25+
// app.user(userverify)
26+
app.get("*",userverify)
2427
app.use('/api/files', filesRoute);
2528

2629
app.get('/', (req, res) => {

static/styles.css

+2-2
Original file line numberDiff line numberDiff line change
@@ -363,8 +363,8 @@ footer {
363363
}
364364

365365
#login {
366-
margin-left: 300px;
367-
margin-right: 300px;
366+
/* margin-left: 300px; */
367+
/* margin-right: 300px; */
368368
padding: 30px 90px 60px 90px;
369369
}
370370

views/login.ejs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</div>
99
<div class="form-group">
1010
<label for="password">Password:</label>
11-
<input type="password" id="password" name="password" required>
11+
<input type="password" id="password" name="password" required style="width: 100%">
1212
</div>
1313
<button type="submit" class="submit-btn">Login</button>
1414
</form>

views/partials/header.ejs

+5
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,12 @@
2121
<ul class="nav-links">
2222
<li><a href="/upload" id="upload-link">Upload</a></li>
2323
<li><a href="/browse" id="browse-link">Browse</a></li>
24+
<% if(!locals.user) { %>
2425
<li><a href="/login" id="login-link">Login</a></li>
26+
<li><a href="/signup" id="signup-link">SignUp</a></li>
27+
<% } else { %>
28+
<li><a href="/logout" id="logout-link">Logout</a></li>
29+
<% } %>
2530
</ul>
2631
</nav>
2732
</header>

0 commit comments

Comments
 (0)