Remove roles on logout
parent
9b8853f984
commit
43b218fb3a
|
|
@ -18,6 +18,7 @@ const Peer = require('./lib/Peer');
|
||||||
const base64 = require('base-64');
|
const base64 = require('base-64');
|
||||||
const helmet = require('helmet');
|
const helmet = require('helmet');
|
||||||
|
|
||||||
|
const userRoles = require('./userRoles');
|
||||||
const {
|
const {
|
||||||
loginHelper,
|
loginHelper,
|
||||||
logoutHelper
|
logoutHelper
|
||||||
|
|
@ -297,6 +298,19 @@ async function setupAuth()
|
||||||
// logout
|
// logout
|
||||||
app.get('/auth/logout', (req, res) =>
|
app.get('/auth/logout', (req, res) =>
|
||||||
{
|
{
|
||||||
|
const { peerId } = req.session;
|
||||||
|
|
||||||
|
const peer = peers.get(peerId);
|
||||||
|
|
||||||
|
if (peer)
|
||||||
|
{
|
||||||
|
for (const role of peer.roles)
|
||||||
|
{
|
||||||
|
if (role !== userRoles.ALL)
|
||||||
|
peer.removeRole(role);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
req.logout();
|
req.logout();
|
||||||
res.send(logoutHelper());
|
res.send(logoutHelper());
|
||||||
});
|
});
|
||||||
|
|
@ -311,6 +325,9 @@ async function setupAuth()
|
||||||
|
|
||||||
const { peerId, roomId } = state;
|
const { peerId, roomId } = state;
|
||||||
|
|
||||||
|
req.session.peerId = peerId;
|
||||||
|
req.session.roomId = roomId;
|
||||||
|
|
||||||
let peer = peers.get(peerId);
|
let peer = peers.get(peerId);
|
||||||
|
|
||||||
if (!peer) // User has no socket session yet, make temporary
|
if (!peer) // User has no socket session yet, make temporary
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue