Skip to content

Commit 648d286

Browse files
committed
code another updated;
1 parent 7d3fe77 commit 648d286

File tree

3 files changed

+102
-42
lines changed

3 files changed

+102
-42
lines changed

app.js

Lines changed: 64 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ const fs = require('fs');
1111
const bodyParser = require("body-parser");
1212
const ejs = require("ejs");
1313
const mongoose = require("mongoose");
14+
const cookieParser = require('cookie-parser');
1415
const session = require('express-session');
1516
const passport = require("passport");
1617
const passportLocalMongoose = require("passport-local-mongoose");
@@ -29,6 +30,7 @@ app.use(session({
2930
}));
3031
app.use(passport.initialize());
3132
app.use(passport.session());
33+
app.use(cookieParser());
3234
mongoose.connect(process.env.DB_LINK, { useNewUrlParser: true }).then(() => {
3335
console.log("database connected Successfully!!");
3436
}).catch((err) => {
@@ -61,30 +63,30 @@ passport.deserializeUser(function (id, done) {
6163
done(err, id)
6264
})
6365
});
64-
passport.use(new GoogleStrategy({
65-
clientID: process.env.CLIENT_ID,
66-
clientSecret: process.env.CLIENT_SECRET,
67-
callbackURL: process.env.CALL_BACK_URL,
68-
userProfileUrl: process.env.URL
69-
},
70-
async function (accessToken, refreshToken, profile, cb) {
71-
try {
72-
// Find the user
73-
let user = await User.findOne({ googleId: profile.id });
74-
75-
// If user doesn't exist, create a new one
76-
if (!user) {
77-
user = new User({ googleId: profile.id, username: profile.id });
78-
await user.save();
79-
}
80-
81-
// Return the user
82-
return cb(null, user);
83-
} catch (err) {
84-
// If any error occurs, pass it to the callback
85-
return cb(err);
86-
}
87-
}));
66+
// passport.use(new GoogleStrategy({
67+
// clientID: process.env.CLIENT_ID,
68+
// clientSecret: process.env.CLIENT_SECRET,
69+
// callbackURL: process.env.CALL_BACK_URL,
70+
// userProfileUrl: process.env.URL
71+
// },
72+
// async function (accessToken, refreshToken, profile, cb) {
73+
// try {
74+
// // Find the user
75+
// let user = await User.findOne({ googleId: profile.id });
76+
77+
// // If user doesn't exist, create a new one
78+
// if (!user) {
79+
// user = new User({ googleId: profile.id, username: profile.id });
80+
// await user.save();
81+
// }
82+
83+
// // Return the user
84+
// return cb(null, user);
85+
// } catch (err) {
86+
// // If any error occurs, pass it to the callback
87+
// return cb(err);
88+
// }
89+
// }));
8890

8991

9092
submitted_csv_file = "";
@@ -406,9 +408,13 @@ app.get("/register", function (req, res) {
406408
res.render("register");
407409
});
408410
app.get("/submit", function (req, res) {
409-
if (req.isAuthenticated()) {
411+
if (req.cookies?.user) {
412+
console.log(
413+
"entering!!"
414+
)
410415
res.render("submit");
411416
} else {
417+
console.log(req.cookies);
412418
res.redirect("/login");
413419
}
414420

@@ -417,6 +423,7 @@ app.get("/submit", function (req, res) {
417423
app.get("/logout", function (req, res, next) {
418424
req.logout(function (err) {
419425
if (err) { return next(err); }
426+
res.clearCookie("user");
420427
res.redirect('/');
421428
});
422429
// res.redirect("/");
@@ -466,26 +473,41 @@ app.post("/register", function (req, res) {
466473
})
467474
});
468475

469-
app.post("/login", function (req, res) {
470-
471-
const user = new User({
472-
username: req.body.username,
473-
password: req.body.password,
474-
});
475-
User.findOne({ username: req.body.username, password: req.body.password }).then(() => {
476-
req.login(user, function (err) {
477-
if (err) {
478-
console.log("error during login!!");
479-
console.log(err);
480-
} else {
481-
// passport.authenticate("local")(req, res, function () {
482-
res.redirect("/submit");
483-
// });
484-
}
476+
app.post("/login", async function (req, res) {
477+
try {
478+
const user = new User({
479+
username: req.body.username,
480+
password: req.body.password,
485481
});
486-
})
487482

483+
const foundUser = await User.findOne({ username: req.body.username, password: req.body.password });
484+
485+
if (foundUser) {
486+
console.log(foundUser);
487+
res.cookie('user', foundUser.username, { maxAge: 900000, httpOnly: true });
488+
res.redirect("/submit");
489+
} else {
490+
res.status(401).send("Invalid credentials");
491+
}
492+
} catch (err) {
493+
console.log(err);
494+
res.status(500).send("Internal Server Error");
495+
}
488496
});
497+
// req.login(user, function (err) {
498+
// if (err) {
499+
// console.log("error during login!!");
500+
// console.log(err);
501+
// } else {
502+
// // passport.authenticate("local")(req, res, function () {
503+
// console.log("error");
504+
// res.redirect("/submit");
505+
// // });
506+
// }
507+
// });
508+
// })
509+
510+
// });
489511

490512
let port = process.env.PORT;
491513
if (port == null || port == "") {

package-lock.json

Lines changed: 37 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"main": "app.js",
66
"dependencies": {
77
"body-parser": "^1.18.3",
8+
"cookie-parser": "^1.4.6",
89
"dotenv": "^6.2.0",
910
"download": "^8.0.0",
1011
"ejs": "^2.6.1",

0 commit comments

Comments
 (0)