mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-05-06 08:37:07 +02:00
This commit is contained in:
@@ -212,8 +212,9 @@ Controllers.registerInterstitial = function (req, res, next) {
|
||||
function (data, next) {
|
||||
if (!data.interstitials.length) {
|
||||
// No interstitials, redirect to home
|
||||
const returnTo = req.session.returnTo || req.session.registration.returnTo;
|
||||
delete req.session.registration;
|
||||
return res.redirect(nconf.get('relative_path') + '/');
|
||||
return res.redirect(returnTo || nconf.get('relative_path') + '/');
|
||||
}
|
||||
var renders = data.interstitials.map(function (interstitial) {
|
||||
return async.apply(req.app.render.bind(req.app), interstitial.template, interstitial.data || {});
|
||||
|
||||
@@ -73,17 +73,14 @@ Auth.reloadRoutes = function (router, callback) {
|
||||
}, function (req, res, next) {
|
||||
// Trigger registration interstitial checks
|
||||
req.session.registration = req.session.registration || {};
|
||||
// save returnTo for later usage in /register/complete
|
||||
// passport seems to remove `req.session.returnTo` after it redirects
|
||||
req.session.registration.returnTo = req.session.returnTo;
|
||||
next();
|
||||
}, function (req, res, next) {
|
||||
let successReturnToOrRedirect = nconf.get('relative_path') + (strategy.successUrl !== undefined ? strategy.successUrl : '/');
|
||||
if (req.session && req.session.returnTo) {
|
||||
successReturnToOrRedirect = req.session.returnTo;
|
||||
}
|
||||
passport.authenticate(strategy.name, {
|
||||
successReturnToOrRedirect: successReturnToOrRedirect,
|
||||
failureRedirect: nconf.get('relative_path') + (strategy.failureUrl !== undefined ? strategy.failureUrl : '/login'),
|
||||
})(req, res, next);
|
||||
});
|
||||
}, passport.authenticate(strategy.name, {
|
||||
successReturnToOrRedirect: nconf.get('relative_path') + (strategy.successUrl !== undefined ? strategy.successUrl : '/'),
|
||||
failureRedirect: nconf.get('relative_path') + (strategy.failureUrl !== undefined ? strategy.failureUrl : '/login'),
|
||||
}));
|
||||
});
|
||||
|
||||
router.post('/register', Auth.middleware.applyCSRF, Auth.middleware.applyBlacklist, controllers.authentication.register);
|
||||
|
||||
Reference in New Issue
Block a user