Note: We appreciate your feedback and bug reports to continue improving our platform. Thank you for your continued support!
This commit is contained in:
@@ -7,6 +7,10 @@ const { getUserData, getSetupData } = require('../../Middlewares/watcherMiddlewa
|
||||
let setupData;
|
||||
let user;
|
||||
|
||||
// Ensure Passport is initialized before using it
|
||||
router.use(passport.initialize());
|
||||
router.use(passport.session());
|
||||
|
||||
Promise.all([
|
||||
getSetupData(),
|
||||
getUserData()
|
||||
@@ -15,7 +19,7 @@ Promise.all([
|
||||
user = userData;
|
||||
|
||||
if (setupData[0].discord !== undefined) {
|
||||
const DiscordStrategy = require('../../models/Passport-Discord');
|
||||
require('../../models/Passport-Discord'); // Ensure the strategy is registered
|
||||
}
|
||||
|
||||
router.get("/auth/discord", (req, res) => {
|
||||
@@ -33,31 +37,34 @@ Promise.all([
|
||||
res.redirect('/auth/login');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
router.use(passport.initialize());
|
||||
router.use(passport.session());
|
||||
|
||||
passport.deserializeUser((user, done) => {
|
||||
done(null, user);
|
||||
});
|
||||
|
||||
router.get('/callback', passport.authenticate('discord', {
|
||||
failureRedirect: '/auth/login'
|
||||
}), (req, res, next) => {
|
||||
checkUserExistsDiscord(req, res, () => {
|
||||
if (req.userExists) {
|
||||
return res.redirect('/dpanel/dashboard');
|
||||
} else {
|
||||
createUser(req.user, (createErr) => {
|
||||
if (createErr) {
|
||||
return next(createErr);
|
||||
router.get('/callback', async (req, res, next) => {
|
||||
try {
|
||||
passport.authenticate('discord', { session: true }, (err, user, info) => {
|
||||
if (err) {
|
||||
console.error('Authentication error:', err);
|
||||
return next(err);
|
||||
}
|
||||
return res.redirect('/dpanel/dashboard');
|
||||
});
|
||||
if (!user) {
|
||||
console.error('No user found:', info);
|
||||
return res.redirect('/auth/login');
|
||||
}
|
||||
req.logIn(user, (err) => {
|
||||
if (err) {
|
||||
console.error('Login error:', err);
|
||||
return next(err);
|
||||
}
|
||||
console.log('Authenticated user:', user);
|
||||
res.redirect('/dpanel/dashboard');
|
||||
});
|
||||
})(req, res, next);
|
||||
} catch (error) {
|
||||
console.error('Error handling callback:', error);
|
||||
next(error);
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
module.exports = router;
|
||||
|
||||
Reference in New Issue
Block a user