Fixed foreach loop on session IDs, was breaking EP on single session in cookie.

This commit is contained in:
johnyma22 2012-09-18 16:30:26 +01:00
parent 923b51033b
commit 443a71bc9c

View file

@ -123,26 +123,29 @@ exports.checkAccess = function (padID, sessionCookie, token, password, callback)
} }
var sessionIDs = sessionCookie.split(','); var sessionIDs = sessionCookie.split(',');
async.foreach(sessionIDs, function(sessionID) { if (sessionIDs){
sessionManager.getSessionInfo(sessionID, function(err, sessionInfo) { async.forEach(sessionIDs, function(sessionID, cb){
//skip session if it doesn't exist sessionManager.getSessionInfo(sessionID, function(err, sessionInfo) {
if(err && err.message == "sessionID does not exist") return; //skip session if it doesn't exist
if(err && err.message == "sessionID does not exist") return;
if(ERR(err, callback)) return; if(ERR(err, callback)) return;
var now = Math.floor(new Date().getTime()/1000); var now = Math.floor(new Date().getTime()/1000);
//is it for this group? //is it for this group?
if(sessionInfo.groupID != groupID) return; if(sessionInfo.groupID != groupID) return;
//is validUntil still ok? //is validUntil still ok?
if(sessionInfo.validUntil <= now) return; if(sessionInfo.validUntil <= now) return;
// There is a valid session // There is a valid session
validSession = true; validSession = true;
sessionAuthor = sessionInfo.authorID; sessionAuthor = sessionInfo.authorID;
}); cb(); // finish the current value and go to next
}, callback) });
}, callback)
}
}, },
//get author for token //get author for token
function(callback) function(callback)