login redirect processing

master
rob 2 years ago
parent 590b2c740b
commit b3a67f7a52

@ -53,7 +53,16 @@ class SessionService {
return async (req, res, next) => {
if (options.requireLogin && !req.user) {
req.session.loginReturnTo = req.url;
return res.redirect(options.loginUri);
this.log.info('redirecting to login', { returnTo: req.url });
return new Promise((resolve, reject) => {
req.session.save(async (err) => {
if (err) {
return reject(err);
}
res.redirect(options.loginUri);
return resolve();
});
});
}
if (options.requireAdmin && (!req.user || !req.user.flags.isAdmin)) {
return next(new SiteError(403, 'Administrator privileges are required'));

Loading…
Cancel
Save