Init displayName according LTI

This commit is contained in:
Mészáros Mihály
2020-01-02 09:48:10 +01:00
parent e8731a37e5
commit 78fd6e1b78
4 changed files with 68 additions and 38 deletions
+21
View File
@@ -405,6 +405,27 @@ class Room extends EventEmitter
case 'join':
{
try
{
if (peer.socket.handshake.session.passport.user.displayName)
{
this._notification(
peer.socket,
'changeDisplayname',
{
peerId : peer.id,
displayName : peer.socket.handshake.session.passport.user.displayName,
oldDisplayName : ''
},
true
);
}
}
catch (error)
{
logger.error(error);
}
// Ensure the Peer is not already joined.
if (peer.joined)
throw new Error('Peer already joined');
+7 -2
View File
@@ -390,9 +390,14 @@ async function runHttpsServer()
{
if (req.secure)
{
if (req.isAuthenticated && req.user && req.user._lti)
const ltiURL = new URL(req.protocol + '://' + req.get('host') + req.originalUrl);
if (req.isAuthenticated && req.user && req.user.displayName && !ltiURL.searchParams.get('displayName'))
{
logger.error(req.user._lti);
ltiURL.searchParams.append('displayName', req.user.displayName);
res.redirect(ltiURL);
}
return next();